The use-after-release checks to build are recorded
This commit is contained in:
parent
fc6e2f7dfb
commit
1e8086b4d3
1
TODO.org
1
TODO.org
@ -905,6 +905,7 @@ semantics; the refined version needs liveness across control flow, which is the
|
||||
flow tracking that was repealed.
|
||||
|
||||
** NEXT Catching a use-after-release statically
|
||||
Decided 2026-09-25 (91): build (A) Odin's unsafe-return refusal — returning (addr local), (slice local-array …) or (addr (at local-array i)); (B) the same test on a set into a global; (C) dev fills a fixed arena's freed bytes with poison on free-all; (D) detect_stack_use_after_return=1 for @sanitize. Rules out a with-allocator escape check: the runtime epoch check catches it and a static rule flags building into the caller's arena. Probes: p1-p16 of the study.
|
||||
Decided 2026-09-25: a study, not a build — how arena memory escapes in real Flan code, and whether a sound lexical check would catch most of it. The result goes in docs/BUILT.md; nothing is built on it without the author.
|
||||
Open, and for the first time with evidence available: the epoch trap is built, and
|
||||
there is a =Vec= to write real arena programs with, so whether the escapes that
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user