40-symtab-errors.md 2.1 KB

SymTab + Errors (symtab.txt 2365 lines, errors.txt 1421 lines)

SymTab (SYMTAB.DEF + disasm; no .MOD decompiled yet)

Symbol = RECORD name: ARRAY [0..7] OF CHAR; word: CARDINAL END;
T1 = POINTER TO R1;
R1 = RECORD link0:T1; link1:POINTER TO ARRAY [0..128] OF CHAR;
            link2:T1; word3:BITSET; word4:CARDINAL END;
old proposed
global3 modCount
global4/5 symFile/strPoolPtr
global6[0..99] moduleTab (Find/EnterModule proc9/10)
global7/8 scopeStack/rollbackStack[0..16]
global9 curScope ({w0,link1})
global15/16/17 symTop/scopeTop/strTop
proc8 Assert
proc9/10 FindModule/EnterModule
proc11/12 LookupChain/MatchSym
proc14/13 AllocSym/EnterChained
proc17/21/22/18/20/19 NewString/GetName/GetAttr/PutAttr/EnterIdent/Unlink
proc23 InitHeaps (slices CODEGEN memory)
proc25/24 InsertBuiltin/EnterStandards (14 builtins)
proc27/26 LibRead/LoadSymFile
proc29/30/31/28 FindExport/ListExports/ImportOne/ImportAll
proc32/2/3/4 SkipQualident/DoDefinition/DoProgram/InitCompile
proc34/33/35/36 NoteImported/DoImportList/CompileBody/CheckForwards
proc1 Compile dispatch; proc6/38/7 SaveSym/Checksum/Unlock

Errors

old proposed
global2 savedEditPos
global3 opCharTab (2-char tokens)
global4 doSymtabRollback
global5/6/7 errNo/curDrive/firstInit
proc1/2 Error(n)/ErrorMsg(n,msg)
proc4/12 WriteString/Fatal(HALT+Delete output)
proc5 FindFile(ext) (drive cycle, ERRMSGS.OVR special case)
DoError EditQuit('E'/'Q') (CBACKUP.$$$, Editor.Edit, usererror/DISK FULL)
proc11/19 RollbackScope/TruncScope (global8[0..16])
proc6/27/28/26 KindName/TypeName/WriteType/NthSlash
proc24/25 NextBit/DerefAlias
proc29/7/8 WriteToken/WriteFound/WritePos
proc9/3/10 AskEditQuit/OvrError/PrintOvr
proc16/30 Expected(set)/Required
proc14/15/13 TypeMismatch/IncompatTypes/AssignMismatch