DIRECTORY P3: TYPE USING [Attr, NPUse, Safety], Symbols: TYPE USING [Type, RecordSEIndex, CTXIndex, BTIndex, ContextLevel], Tree: TYPE USING [Index, Link]; P3S: DEFINITIONS = { OPEN Symbols; BodyData: TYPE = RECORD[ -- shared communication record level: Symbols.ContextLevel, -- current level bodyNode: Tree.Index, -- current body argCtx: Symbols.CTXIndex, -- ctx for inputRecord inputRecord: RecordSEIndex, -- input record for current body returnRecord: RecordSEIndex, -- return record for current body entry: BOOL, -- set for entry procedures lockHeld: BOOL, -- set for entry or internal procedures noXfers: BOOL, -- set by embedded xfer (except return) reachable: BOOL, labelList: Tree.Link, -- list of accessible labels loopDepth: CARDINAL, -- depth of loop nesting catchDepth: CARDINAL, -- depth of catch phrase nesting unwindEnabled: BOOL, -- set iff in scope of unwind resumeFlag: BOOL, -- set iff a resume is legal resumeRecord: RecordSEIndex]; -- for current catch phrase ImplicitInfo: TYPE = RECORD [ -- info about subtree used as an expr type: Type, tree: Tree.Link, attr: P3.Attr]; SelfInfo: TYPE = RECORD [ -- info about x in x.op[args] => op[x, args] tree: Tree.Link, type: Type, attr: P3.Attr, np: P3.NPUse]; safety: READONLY P3.Safety; currentBody: VAR BodyData; currentScope: READONLY BTIndex; implicitRecord: VAR RecordSEIndex; -- type of extraction record markCatch: VAR BOOL; -- reset in Stmt, set in CatchPhrase continued: VAR BOOL; self: VAR SelfInfo; implicit: VAR ImplicitInfo; -- implied interpretation of Tree.Null }. P3S.mesa Copyright c 1985 by Xerox Corporation. All rights reserved. Satterthwaite, April 4, 1986 9:25:18 am PST Russ Atkinson (RRA) March 6, 1985 10:15:45 pm PST shared state variables for pass 3 exported by Pass3S exported by Pass3Xa exported by Pass3Xb Κ:˜codešœ™Kšœ Οmœ1™KšœžœŸ˜)Kšœ žœŸ'˜8K˜Kšœ žœŸ'˜7K˜Kšœ žœ˜KšœŸ˜3Kšœ žœŸ˜.K˜Kšœ žœŸ ˜7KšœžœŸ˜3Kšœ žœŸ˜0KšœŸ˜9K˜K˜—šœžœžœŸ%˜CK˜ K˜K˜K˜—šœ žœžœŸ,˜FK˜K˜ K˜K˜K˜K˜——Kšœ™˜Kšœžœ ˜Kšœ žœ ˜Kšœžœ ˜K˜—Kšœ™˜KšœžœŸ˜?Kšœ žœžœŸ$˜;Kšœ žœžœ˜Kšœžœ ˜K˜—Kšœ™˜Kšœ žœŸ&˜BK˜K˜K˜——…—( j