ludic/selfhost
Orkuncakilkaya ba756cccc1 fix(selfhost): reseed, so the bounds check survives a bootstrap
0998cb5 committed the backend source and not the IR seed it is built from, so
`ludic-dev build` on a clean checkout rebuilt the compiler from a seed that
predates the change and produced one with no bounds checking at all. The check
only existed in whichever binary happened to be sitting in bin/.

That is the same half-a-change this project has just been bitten by twice - a
caller committed without the definition it needs, a table's declaration moved
without its parameters. A compiler change is the source AND the seed.

    seedcheck.ludic:5: index out of range: 5, len 1

from a compiler bootstrapped out of the checked-in seed, which is the thing
that was not true before.

bootstrap: FIXPOINT (gen2.ll == gen3.ll). selfhost-test: 33 passed, 0 failed,
including the C-free bootstrap from the seed.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-23 02:30:41 +03:00
..
backend feat(compiler): a slice index is checked against its length 2026-09-22 20:54:12 +03:00
frontend feat(launcher): Process.*, Http.save_to/received/expected, App.window_hide/show 2026-09-17 13:32:23 +03:00
golden chore(repo): DX cleanup — categorise examples, text-diffable golden, build/ output (#27 #28 #30) 2026-08-30 18:54:21 +03:00
support feat(compiler): list literals, typed compound assignment, file:line diagnostics 2026-09-05 01:12:16 +03:00
tests fix(compiler): == / != on references is identity; only text compares by content 2026-09-16 16:13:31 +03:00
ludicc.seed.ll fix(selfhost): reseed, so the bounds check survives a bootstrap 2026-09-23 02:30:41 +03:00
ludicc.win.seed.ll feat: every key on the keyboard is bindable - the F-row, the six-pack, Caps Lock and the numpad 2026-09-18 00:57:02 +03:00
main.ludic fix: CSPRNG on Windows, and a window's first title is the package's app name 2026-09-17 16:22:05 +03:00