.inc → real .pas units refactor
- Type: chore
- Status: rejected
- Owner: —
- Unblocks: feature-flexcolumn-directive
- Opened: 2026-06-06 (from todo.md §6)
Motivation
The {$include} soup is an accepted single-translation-unit hack, not the
target architecture. The inline-unit model (unit/interface/implementation,
uses) already supports the move — no separate-compilation feature needed.
Scope
- RTL/library units move early (low risk, real payoff).
- Compiler self-split is last (stress-tests unit support against the compiler itself; must hold self-host fixedpoint; payoff is human-readability only).
- Write new code as proto-units meanwhile.
- Seam principle: algorithm/table → library; token-stream + symtab plumbing →
core.
asmenc.incis the live example to split.
Acceptance
Targeted .inc files become real units with the suite green and self-host
fixedpoint intact at each step.
Log
- 2026-06-06 — ticket opened from todo.md §6.
- 2026-06-28 — Rejected/wontfix. The compiler has already settled into the
single-translation-unit
{$include}shape, and the main feature areas now have their own focused include files. Splitting everything into units would add folder/file churn without enough payoff for the current path.