ruff/crates/red_knot_python_semantic/resources/mdtest/assignment/unbound.md
Douglas Creager 918358aaa6
Migrate some inference tests to mdtests (#14795)
As part of #13696, this PR ports a smallish number of inference tests
over to the mdtest framework.
2024-12-06 11:19:22 +01:00

752 B

Unbound

Unbound

x = foo  # error: [unresolved-reference] "Name `foo` used when not defined"
foo = 1

# No error `unresolved-reference` diagnostic is reported for `x`. This is
# desirable because we would get a lot of cascading errors even though there
# is only one root cause (the unbound variable `foo`).

# revealed: Unknown
reveal_type(x)

Note: in this particular example, one could argue that the most likely error would be a wrong order of the x/foo definitions, and so it could be desirable to infer Literal[1] for the type of x. On the other hand, there might be a variable fob a little higher up in this file, and the actual error might have been just a typo. Inferring Unknown thus seems like the safest option.