aboutsummaryrefslogtreecommitdiff
path: root/src/boot/parser.boot
diff options
context:
space:
mode:
Diffstat (limited to 'src/boot/parser.boot')
-rw-r--r--src/boot/parser.boot9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/boot/parser.boot b/src/boot/parser.boot
index d612a89e..2ef81452 100644
--- a/src/boot/parser.boot
+++ b/src/boot/parser.boot
@@ -987,7 +987,7 @@ bpDefinition ps ==
false
bpStoreName ps ==
- $op := first parserTrees ps
+ enclosingFunction(parserLoadUnit ps) := first parserTrees ps
sideConditions(parserLoadUnit ps) := nil
$typings := nil
true
@@ -1318,15 +1318,18 @@ bpCaseItem ps ==
++ Main entry point into the parser module.
bpOutItem ps ==
- $op: local := nil
+ op := enclosingFunction parserLoadUnit ps
varno := parserGensymSequenceNumber ps
try
+ enclosingFunction(parserLoadUnit ps) := nil
parserGensymSequenceNumber(ps) := 0
bpRequire(ps,function bpComma)
catch(e: BootSpecificError) =>
bpSpecificErrorHere(ps,e)
bpTrap ps
- finally parserGensymSequenceNumber(ps) := varno
+ finally
+ parserGensymSequenceNumber(ps) := varno
+ enclosingFunction(parserLoadUnit ps) := op
b := bpPop1 ps
t :=
b is ["+LINE",:.] => [ b ]