Dummy: DEFINITIONS = BEGIN -- PUBLIC SYMBOLS FOR -- Symbols ArraySEIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO array cons SERecord; ArraySENull: --Symbols--ArraySEIndex; Base: --Symbols--TYPE = Table.Base; BitAddress: --Symbols--TYPE = RECORD[wd: [0..7777B], bd: [0..15]]; BodyInfo: --Symbols--TYPE = RECORD[SELECT mark: * FROM Internal => [bodyTree: Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]], thread: Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]], frameSize: [0..7774B]], External => [bytes: [0..77777B], startIndex: CARDINAL, indexLength: CARDINAL], ENDCASE]; BodyLink: --Symbols--TYPE = RECORD[which: {sibling, parent}, index: BTIndex]; BodyRecord: --Symbols--TYPE = RECORD[link: BodyLink, firstSon: BTIndex, type: RecordSEIndex, localCtx: CTXIndex, level: ContextLevel, sourceIndex: CARDINAL, info: BodyInfo, extension: SELECT kind: * FROM Callable => [inline: BOOLEAN, id: ISEIndex, ioType: CSEIndex, monitored: BOOLEAN, noXfers: BOOLEAN, resident: BOOLEAN, entry: BOOLEAN, internal: BOOLEAN, entryIndex: [0..255], hints: RECORD[safe: BOOLEAN, argUpdated: BOOLEAN, nameSafe: BOOLEAN, needsFixup: BOOLEAN], closure: SELECT nesting: * FROM Outer => NULL, Inner => [frameOffset: [0..7773B]], Catch => [index: CatchIndex], ENDCASE], Other => [relOffset: [0..77777B]], ENDCASE]; bodyType: --Symbols--Table.Selector = 6; BTIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO BodyRecord; BTNull: --Symbols--BTIndex; ByteLength: --Symbols--CARDINAL = 8; CatchIndex: --Symbols--TYPE = NATURAL; CBTIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO Callable BodyRecord; CBTNull: --Symbols--CBTIndex; CCBTIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO Catch Callable BodyRecord; CCBTNull: --Symbols--CCBTIndex; Closure: --Symbols--TYPE = {none, unit, rc, full}; codeANY: --Symbols--CARDINAL = 0; codeCHAR: --Symbols--CARDINAL = 2; codeINT: --Symbols--CARDINAL = 1; ContextLevel: --Symbols--TYPE = [0..7]; CSEIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO cons SERecord; CSENull: --Symbols--CSEIndex; CTXIndex: --Symbols--TYPE = Base RELATIVE ORDERED POINTER [NIL..LOOPHOLE [3777B]] TO CTXRecord; CTXNull: --Symbols--CTXIndex; CTXRecord: --Symbols--TYPE = RECORD[mark: BOOLEAN, varUpdated: BOOLEAN, seList: ISEIndex, level: ContextLevel, extension: SELECT ctxType: * FROM simple => [ctxNew: CTXIndex], included => [chain: IncludedCTXIndex, copied: Closure ← none, module: MDIndex, map: CTXIndex, closed: BOOLEAN, complete: BOOLEAN, restricted: BOOLEAN, reset: BOOLEAN], imported => [includeLink: IncludedCTXIndex], nil => NULL, ENDCASE]; ctxType: --Symbols--Table.Selector = 4; DummyLink: --Symbols--TYPE = RECORD[gfi: [0..255], ep: [0..255]]; ExtensionType: --Symbols--TYPE = {value, form, default, none}; FileIndex: --Symbols--TYPE = [0..77777B]; HashVector: --Symbols--TYPE = ARRAY HVIndex OF HTIndex; HTIndex: --Symbols--TYPE = CARDINAL[0..17777B]; HTNull: --Symbols--HTIndex = 0; HTRecord: --Symbols--TYPE = RECORD[anyInternal: BOOLEAN, anyPublic: BOOLEAN, link: HTIndex, ssIndex: CARDINAL]; htType: --Symbols--Table.Selector = 2; HVIndex: --Symbols--TYPE = CARDINAL[0..70]; HVLength: --Symbols--PRIVATE CARDINAL = 71; ICBTIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO Inner Callable BodyRecord; IncludedCTXIndex: --Symbols--TYPE = Base RELATIVE ORDERED POINTER [NIL..LOOPHOLE [3777B]] TO included CTXRecord; IncludedCTXNull: --Symbols--IncludedCTXIndex; ISEIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO id SERecord; ISENull: --Symbols--ISEIndex; lG: --Symbols--ContextLevel = 1; Limit: --Symbols--CARDINAL = 40000B; Linkage: --Symbols--TYPE = {val, ref, type, manifest, none}; LinkTag: --Symbols--TYPE = {variable, procedure, type}; lL: --Symbols--ContextLevel = 2; lZ: --Symbols--ContextLevel = 0; MDIndex: --Symbols--TYPE = Base RELATIVE ORDERED POINTER [NIL..LOOPHOLE [37777B]] TO MDRecord; MDNull: --Symbols--MDIndex; MDRecord: --Symbols--TYPE = RECORD[stamp: TimeStamp.Stamp, moduleId: HTIndex, fileId: HTIndex, shared: BOOLEAN, exported: BOOLEAN, ctx: IncludedCTXIndex, defaultImport: CTXIndex, file: FileIndex]; mdType: --Symbols--Table.Selector = 5; NullFileIndex: --Symbols--FileIndex = 77777B; OCBTIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO Outer Callable BodyRecord; OwnMdi: --Symbols--MDIndex; RecordSEIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO record cons SERecord; RecordSENull: --Symbols--RecordSEIndex; RefClass: --Symbols--TYPE = {none, simple, composite}; RefSEIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO ref cons SERecord; RefSENull: --Symbols--RefSEIndex; RootBti: --Symbols--CBTIndex; SEIndex: --Symbols--TYPE = Base RELATIVE POINTER [NIL..LOOPHOLE [37777B]] TO SERecord; SENull: --Symbols--SEIndex; SERecord: --Symbols--TYPE = RECORD[mark3: BOOLEAN, mark4: BOOLEAN, body: SELECT seTag: * FROM id => [extended: BOOLEAN, public: BOOLEAN, idCtx: CTXIndex, immutable: BOOLEAN, constant: BOOLEAN, idType: SEIndex, idInfo: UNSPECIFIED, idValue: UNSPECIFIED, hash: HTIndex, linkSpace: BOOLEAN, ctxLink: SELECT linkTag: * FROM terminal => NULL, sequential => NULL, linked => [link: ISEIndex], ENDCASE], cons => [typeInfo: SELECT typeTag: TypeClass FROM mode => NULL, basic => [ordered: BOOLEAN, code: [0..15], length: CARDINAL], enumerated => [ordered: BOOLEAN, machineDep: BOOLEAN, unpainted: BOOLEAN, sparse: BOOLEAN, valueCtx: CTXIndex, nValues: CARDINAL], record => [hints: RECORD[comparable: BOOLEAN, assignable: BOOLEAN, unifield: BOOLEAN, variant: BOOLEAN, privateFields: BOOLEAN, refField: BOOLEAN, default: BOOLEAN, voidable: BOOLEAN], length: CARDINAL, argument: BOOLEAN, monitored: BOOLEAN, machineDep: BOOLEAN, painted: BOOLEAN, fieldCtx: CTXIndex, linkPart: SELECT linkTag: * FROM notLinked => NULL, linked => [linkType: SEIndex], ENDCASE], ref => [counted: BOOLEAN, ordered: BOOLEAN, readOnly: BOOLEAN, list: BOOLEAN, var: BOOLEAN, basing: BOOLEAN, refType: SEIndex], array => [packed: BOOLEAN, indexType: SEIndex, componentType: SEIndex], arraydesc => [var: BOOLEAN, readOnly: BOOLEAN, describedType: SEIndex], transfer => [safe: BOOLEAN, mode: TransferMode, typeIn: CSEIndex, typeOut: CSEIndex], definition => [named: BOOLEAN, defCtx: CTXIndex], union => [hints: RECORD[equalLengths: BOOLEAN, refField: BOOLEAN, default: BOOLEAN, voidable: BOOLEAN], overlaid: BOOLEAN, controlled: BOOLEAN, machineDep: BOOLEAN, caseCtx: CTXIndex, tagSei: ISEIndex], sequence => [packed: BOOLEAN, controlled: BOOLEAN, machineDep: BOOLEAN, tagSei: ISEIndex, componentType: SEIndex], relative => [baseType: SEIndex, offsetType: SEIndex, resultType: SEIndex], subrange => [filled: BOOLEAN, empty: BOOLEAN, rangeType: SEIndex, origin: INTEGER, range: CARDINAL], long => [rangeType: SEIndex], real => [rangeType: SEIndex], opaque => [lengthKnown: BOOLEAN, length: CARDINAL, id: ISEIndex], zone => [counted: BOOLEAN, mds: BOOLEAN], any => NULL, nil => NULL, ENDCASE], ENDCASE]; seType: --Symbols--Table.Selector = 1; ssType: --Symbols--Table.Selector = 3; StandardContext: --Symbols--TYPE = CTXIndex[LOOPHOLE [2]..LOOPHOLE [12]]; TransferMode: --Symbols--TYPE = {proc, port, signal, error, process, program, none}; typeANY: --Symbols--CSEIndex; TypeClass: --Symbols--TYPE = {mode, basic, enumerated, record, ref, array, arraydesc, transfer, definition, union, sequence, relative, subrange, long, real, opaque, zone, any, nil}; typeTYPE: --Symbols--CSEIndex; VarTag: --Symbols--TYPE = MACHINE DEPENDENT {var, proc0, type, proc1}; WordLength: --Symbols--CARDINAL = 16; END.