|
|
@@ -147,11 +147,18 @@ Still to do:
|
|
|
tests in `run_tests.sh`.
|
|
|
7. Remove the dead scaffolding. Done 2026-10-08: `LowerSession`,
|
|
|
`LowerUnit`, the whole `Can*` capability-walker family,
|
|
|
- `CanLower`/`CanExpr`/`CanDecls`/`CanProc`, and the dead
|
|
|
- `SetLower`/`lowerRequested`. Still needed until the inline emit is
|
|
|
- gone: `SaveSession`/`RestoreSession`/`SetNoEmit` (the grammar still
|
|
|
- emits suppressed) and `MaterializeGlobals`/`MaterializeReplace`
|
|
|
- (called from `LowerOneUnit`).
|
|
|
+ `CanLower`/`CanExpr`/`CanDecls`/`CanProc`, the dead
|
|
|
+ `SetLower`/`lowerRequested`, plus every compiler proc a tree-wide
|
|
|
+ scan (tests included) finds unreferenced — `QbeGen`'s
|
|
|
+ `CloseModule`/`FwdPatch`/`FwdElemPatch`/`Remark`/`StrLen`,
|
|
|
+ `SymTab`'s `CurModule`/`CurUnit`/`ProcDepth`/`ParamName`/
|
|
|
+ `ModDefined`/`ModImplemented`/`Qual*`/`NestArray`/`NewSub`/
|
|
|
+ `SetElemCheck`/`SetFor`/`UnaryCheck`/`FwdVarKind`, and `AST`'s
|
|
|
+ `TxtLen`/`SetKind` (`AST.AddChild` stays; `tests/t_ast.mod` uses it).
|
|
|
+ Still needed until the inline emit is gone:
|
|
|
+ `SaveSession`/`RestoreSession`/`SetNoEmit` (the grammar still emits
|
|
|
+ suppressed) and `MaterializeGlobals`/`MaterializeReplace` (called
|
|
|
+ from `LowerOneUnit`).
|
|
|
|
|
|
Note: full deletion to zero is gated on moving constant folding into
|
|
|
`Lower` (item 4). Until then the expression/value layer stays.
|