<<>> <> <> <> <> <> DIRECTORY Alloc USING [BaseSeq, Handle], FileParms USING [ActualId], OSMiscOps USING [Stamp], MobDefs USING [MTHandle, SGRecord, VersionStamp], Rope USING [ROPE], SourceMap USING [Loc], Symbols USING [Alignment, CBTIndex, CSEIndex, CTXIndex, ISEIndex], SymbolSegment USING [FGTEntry], SymbolTable USING [Base], Tree USING [Link]; MimData: DEFINITIONS = { OPEN Symbols; <> ownSymbols: SymbolTable.Base; <> interface: BOOL; -- interface module moduleCtx: CTXIndex; -- module identifiers importCtx: CTXIndex; -- import id context exportCtx: CTXIndex; -- export id context mainCtx: CTXIndex; -- main program's context nBodies: CARDINAL; nInnerBodies: CARDINAL; nSigCodes: CARDINAL; defBodyLimit: CARD; linkCount: CARDINAL; -- global control links (externals, etc) cedar: BOOL; monitored: BOOL; stopping: BOOL; <> bitsToAlignment: REF BitsToAlign; BitsToAlign: TYPE = ARRAY BitsToAlignIndex OF Symbols.Alignment; BitsToAlignIndex: TYPE = [0..64]; wordAlignment: Symbols.Alignment; worstAlignment: Symbols.Alignment; outerCtx: CTXIndex; -- predefined identifiers idANY: ISEIndex; idINTEGER, idINT, idDINT, idINT16, idINT32, idINT64: ISEIndex; idCARDINAL, idCARD, idDCARD, idCARD16, idCARD32, idCARD64: ISEIndex; idNAT, idCHAR, idBOOL, idSTRING: ISEIndex; idREAL, idDREAL, idREAL32, idREAL64: ISEIndex; idTEXT: ISEIndex; idLOCK: ISEIndex; idATOM: ISEIndex; typeSTRING, typeStringBody: CSEIndex; typeAtomRecord: CSEIndex; typeRefANY, typeListANY: CSEIndex; typeLOCK, typeCONDITION: CSEIndex; tC0, tC1: Tree.Link; idUNWIND: ISEIndex; seAnon: ISEIndex; <> table: Alloc.Handle; base: REF Alloc.BaseSeq; <> switches: PACKED ARRAY CHAR['a..'z] OF BOOL; checks: PACKED ARRAY CHAR['a..'z] OF BOOL; <> source: FileParms.ActualId; sourceTokens: CARDINAL; pattern: FileParms.ActualId; -- old mob to match matched: BOOL; <> nErrors: CARDINAL; nWarnings: CARDINAL; bodyIndex: CBTIndex; -- current body textIndex: SourceMap.Loc; -- start index of phrase with error <> compilerVersion: MobDefs.VersionStamp; objectVersion: MobDefs.VersionStamp; objectStamp: OSMiscOps.Stamp; globalFrameSize: CARD; fgTable: LONG DESCRIPTOR FOR ARRAY OF SymbolSegment.FGTEntry; mobSeg, codeSeg, symSeg: MobDefs.SGRecord; mtRoot: MobDefs.MTHandle; mtRootSize: CARDINAL; fixupLoc: CARD; }.