1242 Commits

Author SHA1 Message Date
7abe760288 cond and until are prelude macros, and a macro module holds only the macros its forms reach 2026-09-25 10:28:32 +07:00
0167fcef43 A quasiquote inside a quasiquote nests, and a macro that writes a macro defines one the program can call 2026-09-25 10:14:41 +07:00
bf827dc55b A test binary leaves nothing in the temporary directory it was given 2026-09-25 09:56:39 +07:00
16d04cbb49 A parameter vector that reads a name as a type is to be warned at, the type winning 2026-09-25 09:56:33 +07:00
f7deba7a3e A test binary's directory is one it made fresh, and a same-pid name already there when it started is not counted as its leftover 2026-09-25 09:56:25 +07:00
9650f331d6 A pointer and an untagged union are to take a byte fill 2026-09-25 09:55:07 +07:00
81569b60d8 A compound constant is to fold before a bounded variable checks it 2026-09-25 09:54:35 +07:00
f6cdb4e31b A quasiquote is to nest, counting depth as SBCL's backquote does 2026-09-25 09:54:05 +07:00
ddff84ffed Any slice is to clone into the context allocator 2026-09-25 09:53:36 +07:00
497881a333 An into temporary is reclaimed by its region, so its leak is not a gap 2026-09-25 09:53:16 +07:00
51ce9a2ba6 Any expression is to take its type from (the T expr) 2026-09-25 09:52:29 +07:00
1cec47b5d4 Result and try are cancelled: conditions are the error mechanism 2026-09-25 09:45:48 +07:00
7a1d9c1263 The Map is to take the Swiss-table layout 2026-09-25 09:44:59 +07:00
931000fcb5 A test binary's own directory is removed twice over before it is checked, so a child still exiting cannot fail the run 2026-09-25 09:44:02 +07:00
af4da764b2 A dev build is to name the raylib resources still loaded at exit 2026-09-25 09:43:52 +07:00
836185a174 A diagnostic's clauses have a fixed order, and a stable kind waits for the docs it would link to 2026-09-25 09:41:24 +07:00
6a1182df5d A test binary runs under a temporary directory of its own and leaves nothing in the one it was given 2026-09-25 09:40:00 +07:00
ff89f25e48 C-c C-c is to report every error in a form, through an error type that absorbs what it causes 2026-09-25 09:37:16 +07:00
92d63e3b36 Every decision taken in the TODO review is recorded, and NEXT is a keyword the file declares 2026-09-25 09:34:47 +07:00
795ba945d9 A dyn value held beside a sibling that can allocate is rooted until it is used, on every backend 2026-09-25 09:32:34 +07:00
0d629d791f The array an index or a slice is taken of is rooted while its index runs, when it is a temporary 2026-09-25 09:30:41 +07:00
11dc230974 A defn- is private to its module, and the module's own macros may call it 2026-09-25 08:57:20 +07:00
793b0eea9e A defn- is private to its module, the package's own macros may write calls to it, and the refusal names the fix 2026-09-25 08:55:37 +07:00
96314accd0 One library pipeline builds every program, one alias names the corpus, and a closed session leaves no directory behind 2026-09-25 08:53:45 +07:00
00f116ea29 Six small refusals and conversions say what the program wrote 2026-09-25 08:41:31 +07:00
376e990689 The prelude's macro module drops a defn- that names a macro, as it drops a defn 2026-09-25 08:40:35 +07:00
6f0f4957f4 The break buffer, the inspector and the watch table show what a stopped program holds 2026-09-25 08:37:15 +07:00
ff744120fc A release build's watch is only its value, next-error lets go of a stack that has resumed, and the frame a stop is in is always shown 2026-09-25 08:36:53 +07:00
0653f341d0 A dyn value held in an operand list is rooted while a sibling operand may allocate 2026-09-25 08:36:34 +07:00
63f1a1357f Merge branch 'master' into worktree-agent-ad23aafb29b84cc8b 2026-09-25 08:33:28 +07:00
cb0be62087 An integer written at or above 2^63 is a u64 and nothing else, and vec-new reads a type from its argument only when the builtin is what was called 2026-09-25 07:43:24 +07:00
6fd456c0a2 A function declared with defn- is callable only from the files of its own package 2026-09-25 07:42:40 +07:00
f986c0728a A test binary names the signal that killed a daemon, and the break buffer keeps its keys under Evil 2026-09-25 07:40:58 +07:00
414e1e5ae6 The temp directory is left to the build-plumbing lane, and under Evil the break buffer takes only the keys it binds
The dead-session sweep and the remove-on-close half are dropped: the sweep contradicts the recorded non-goals, and the other lane owns removal on a clean close. The Evil keys are defined per state from the map's own bindings, so special-mode-map's h, SPC, < and - no longer shadow Evil's.
2026-09-25 07:40:33 +07:00
88584f76bc The records say what the tree does, and an arena grown in place answers to its budget 2026-09-25 07:39:11 +07:00
f83e803ef8 An aggregate that reads its own destination sees the old value on x86, as it does on LLVM 2026-09-25 07:39:03 +07:00
918edfb0b5 plan.org describes containers, pools and classes as they are after the repeal 2026-09-25 07:37:37 +07:00
cf71caefc2 spec-memory.md cites the defer_ok field on the line it is declared 2026-09-25 07:36:57 +07:00
cbd910c117 An arena's budget holds when a block grows in place, and a shrink is never over budget 2026-09-25 07:36:52 +07:00
52681ec58c Two gaps found on the way are on record: the half-write abort flake and the one-shot commands' empty work directory 2026-09-25 07:33:32 +07:00
cda939c8be Only a place has an address in the inspector, and a watched dyn value and string are pinned armed 2026-09-25 07:32:25 +07:00
7d75cc0a5d The CLI and the tests load, check and link a program through one module in the library 2026-09-25 07:30:55 +07:00
54ec52fde6 A dev session that ends cleanly takes its directories with it, and Build.executable says where the IR it kept is 2026-09-25 07:28:34 +07:00
377ada8d27 The inspector says where a slot's value is stored 2026-09-25 07:27:25 +07:00
5477c75909 Three of the four under-load and dogfooding entries are settled, and the fourth records what was tried 2026-09-25 07:24:20 +07:00
37ccca56a3 Every sweep reads the corpus through one alias, and a build that raises is a FAIL line in each of them
The sanitizer sweep also lists the five macro programs that run.
2026-09-25 07:23:12 +07:00
85b9f35a66 (watch "name" v) renders any value into the watch table the way print renders it 2026-09-25 07:22:59 +07:00
04f5d5a349 Under Evil, a digit in the break buffer takes the restart, because the buffer's keys take precedence over Evil's 2026-09-25 07:22:42 +07:00
2250548b07 A test that sees a process die on a signal names the signal, not OCaml's number for it
OCaml numbers the signals negatively and in its own order: SIGTERM is -11. The globals daemon's "transient signal 11" was a SIGTERM, not a segfault.
2026-09-25 07:21:44 +07:00
991e4423aa A dev session removes its build directory when it closes, and the next session sweeps the ones whose process is gone
Every daemon left about 8MB in $TMPDIR/flan-dev-<pid>. A test_dev run left 300MB, and a few concurrent runs filled the tmpfs /tmp, after which every daemon died on its link before binding. The half-write test's abort also goes through [aborted] now, since an abort that worked can arrive as the socket closing.
2026-09-25 07:19:52 +07:00