Skip to content

Kind inference incorrectly infers arrays with complex assignments are real-valued

In the following code, kind inference infers that x has kind Array(is_real_valued=True), even though a complex float is being assigned.

def test_assign():
    x = var("<p>x")
    t = var("<t>")

    with CodeBuilder("main") as cb:
        cb(x, "<builtin>array(1)")
        cb(x[0], 1j)
        cb.yield_state(x[0], "y", t, "t")

    return DAGCode.from_phases_list(
            [cb.as_execution_phase("main")], "main")
Edited by Matt Wala
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information