Brummel
72f3f6541b
debug: RED-pin for instance-body unbound-var bug
...
ail check returns ok for a program that references an unbound
identifier inside an instance method's lambda body. The error
surfaces later at ail build as a degraded mono-pass diagnostic
(monomorphise_workspace: unknown identifier) without source
location, symbol kind, or "did you mean" candidates.
Cause: check_def at crates/ailang-check/src/lib.rs:1593 early-
returns Ok(()) for Def::Instance without walking method bodies.
The arm's comment promises instance-body typechecking from iter
22b.2; that wiring was never implemented. Only the workspace-
load coherence checks (Orphan/Duplicate/MissingMethod) touch
instance defs, and they inspect schema only, not the method-
body identifier graph.
This commit lands RED only. GREEN follows via implement mini-
mode.
Fixture: examples/bug_unbound_in_instance_method.ail
RED test: crates/ail/tests/unbound_in_instance_method_pin.rs
- check_fires_unbound_var_for_str_concat_in_instance_method_body
- check_json_unbound_var_in_instance_method_body
2026-05-13 11:59:49 +02:00
..
2026-05-13 11:48:58 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-08 18:13:43 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-07 11:07:36 +02:00
2026-05-13 11:59:49 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-11 09:58:22 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 09:59:30 +02:00
2026-05-13 04:07:36 +02:00
2026-05-12 14:20:27 +02:00
2026-05-08 23:03:10 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-08 19:36:04 +02:00
2026-05-12 14:20:27 +02:00
2026-05-08 19:36:04 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-10 22:35:37 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 03:31:40 +02:00
2026-05-09 17:50:29 +02:00
2026-05-09 17:45:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 01:11:56 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-10 04:47:50 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-11 01:46:58 +02:00
2026-05-11 01:46:58 +02:00
2026-05-11 01:46:58 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-12 14:20:27 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00
2026-05-13 11:12:48 +02:00