|
@@ -3193,6 +3193,7 @@ TYPE
|
|
nextVariable-: Variable;
|
|
nextVariable-: Variable;
|
|
untraced-: BOOLEAN;
|
|
untraced-: BOOLEAN;
|
|
fictive-: BOOLEAN; (* variable is not allocated but has a fixed offset *)
|
|
fictive-: BOOLEAN; (* variable is not allocated but has a fixed offset *)
|
|
|
|
+ fictiveOffset-: LONGINT; (* offset of fictive as provided by the source code *)
|
|
useRegister-: BOOLEAN; registerNumber-: LONGINT;
|
|
useRegister-: BOOLEAN; registerNumber-: LONGINT;
|
|
modifiers-: Modifier;
|
|
modifiers-: Modifier;
|
|
initializer-: Expression;
|
|
initializer-: Expression;
|
|
@@ -3232,10 +3233,11 @@ TYPE
|
|
registerNumber := reg
|
|
registerNumber := reg
|
|
END SetRegisterNumber;
|
|
END SetRegisterNumber;
|
|
|
|
|
|
- PROCEDURE SetFictive*(f: BOOLEAN);
|
|
|
|
|
|
+ PROCEDURE SetFictive*(offset: LONGINT);
|
|
BEGIN
|
|
BEGIN
|
|
- fictive := f;
|
|
|
|
- IF fictive THEN SetUntraced(TRUE) END;
|
|
|
|
|
|
+ fictive := TRUE;
|
|
|
|
+ fictiveOffset := offset;
|
|
|
|
+ SetUntraced(TRUE);
|
|
END SetFictive;
|
|
END SetFictive;
|
|
|
|
|
|
PROCEDURE SetModifiers*(flag: Modifier);
|
|
PROCEDURE SetModifiers*(flag: Modifier);
|