Say that the sanitizer sweep is a list, and the macro programs are not on it

This commit is contained in:
Joseph Ferano 2026-09-12 21:09:03 +07:00
parent 64d4993fee
commit 902f6e4a1d

View File

@ -1396,6 +1396,10 @@ What follows is only the part that is still missing.
compiler process, so it is process-wide in practice. The rounds already build more than one module for a program compiler process, so it is process-wide in practice. The rounds already build more than one module for a program
whose macros call macros, and the fix that day is to seed the counter from the module's index. whose macros call macros, and the fix that day is to seed the counter from the module's index.
- **The macro programs are not in the sanitizer sweep.** `test_sanitize.ml` runs an explicit list, not a glob, so
`macros.flan` and `macro-unless.flan` were not added to it by landing them. `dune build --root . @sanitize` is
clean as it stands; adding the two is a one-line edit in a file this lane did not own.
- **No `&rest` sugar.** A macro takes one parameter, the slice of forms at its call site, and `(len args)` is the - **No `&rest` sugar.** A macro takes one parameter, the slice of forms at its call site, and `(len args)` is the
arity. That is deliberate — it is where variadics come from — but a `when` written against it reads worse than arity. That is deliberate — it is where variadics come from — but a `when` written against it reads worse than
`parse.ml`'s version did. `parse.ml`'s version did.