diff --git a/TODO.org b/TODO.org index 045a9c8b..c7900070 100644 --- a/TODO.org +++ b/TODO.org @@ -1079,7 +1079,7 @@ An unknown call whose near miss is a value — =(context-allocator)= against =context/allocator=, or a global — says the name is a value written without parentheses, and names no call at all when the call had arguments. -** NEXT (max-of T) and (min-of T) +** NEXT (max-value T) and (min-value T) Decided 2026-09-25: the type-limit constants as a form taking a type, Odin's max(T), valid at any numeric type or a numeric?-bounded variable. For a float, min-of is the most negative finite value. @@ -1266,6 +1266,13 @@ lowering buffer annotates all four sections, the two =llc= ones from a =--debug= copy of the IR. Rules out writing a disassembler, and reading the source off disk at disassembly time. +** NEXT A temporary allocator, wiped each frame +Decided 2026-09-25: Odin's context.temp_allocator. i64->bytes, f64->bytes and +other quick formatting allocate from it, so a number drawn every frame no longer +leaks from the default allocator. A dev build wipes it at each frame boundary; +otherwise the program calls (free-temp) once per frame. Text kept past the frame +is cloned. + * Runtime ** DONE An index out of range is a condition