You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Retain failed global, local, and awaited declarations as semantic poison bindings so later references preserve navigation without producing unrelated unknown-variable or type errors. Propagate the poison through contextual typing and common expression forms while keeping strict compilation and code generation blocked by the original diagnostics.
let run_scoped_initializer = checker.semantics.standard_library_item(global.value.id)
61
61
== Some(crate::stdlib::StdlibItemId::SetNew);
62
-
if !constant_initializer && !run_scoped_initializer {
62
+
let initializer_checked = inferred.is_some();
63
+
if initializer_checked && !constant_initializer && !run_scoped_initializer {
63
64
checker.error(
64
65
"global initializers must be literal values composed from None, numbers, booleans, strings, payload-free enums, records, or arrays, or a run-scoped Set.new value",
65
66
global.value.span,
66
67
);
67
68
}
68
-
ifletSome(ty) = inferred {
69
-
let unsupported_standard = checker.standard_type_id(ty).is_some_and(|standard| {
0 commit comments