diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/ChangeLog | 6 | ||||
-rw-r--r-- | src/interp/nruncomp.boot | 12 |
2 files changed, 10 insertions, 8 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 0010e2d3..050f5f10 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2010-02-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Don't store extraneous + item on $NRTdeltaList. + (NRTgetLocalIndex): Likewise. Tidy. + 2010-02-22 Gabriel Dos Reis <gdr@cs.tamu.edu> Expand support for domain inlining to non-niladic functors. diff --git a/src/interp/nruncomp.boot b/src/interp/nruncomp.boot index dce086dc..0dfd95f5 100644 --- a/src/interp/nruncomp.boot +++ b/src/interp/nruncomp.boot @@ -198,7 +198,7 @@ genDeltaEntry opMmPair == if null NRTassocIndex dc and (member(dc,$functorLocalParameters) or not atom dc) then --create "%domain" entry to $NRTdeltaList - $NRTdeltaList:= [["%domain",NRTaddInner dc,:dc],:$NRTdeltaList] + $NRTdeltaList:= [["%domain",NRTaddInner dc],:$NRTdeltaList] saveNRTdeltaListComp:= $NRTdeltaListComp:=[nil,:$NRTdeltaListComp] $NRTdeltaLength := $NRTdeltaLength+1 compEntry:= (compOrCroak(odc,$EmptyMode,$e)).expr @@ -232,12 +232,8 @@ NRTgetLocalIndex item == k := NRTassocIndex item => k item = "$" => 0 item = "$$" => 2 - value:= - atom item => - MEMQ(item,$formalArgList) => item - nil - atom item and null value => --give slots to atoms - $NRTdeltaList:= [["%domain",NRTaddInner item,:value],:$NRTdeltaList] + atom item and not MEMQ(item,$formalArgList) => --give slots to atoms + $NRTdeltaList:= [["%domain",NRTaddInner item],:$NRTdeltaList] $NRTdeltaListComp:=[item,:$NRTdeltaListComp] index := $NRTbase + $NRTdeltaLength -- slot number to return $NRTdeltaLength := $NRTdeltaLength+1 @@ -245,7 +241,7 @@ NRTgetLocalIndex item == -- when assigning slot to flag values, we don't really want to -- compile them. Rather, we want to record them as if they were atoms. flag := isQuasiquote item - $NRTdeltaList:= [["%domain", NRTaddInner item,:value], :$NRTdeltaList] + $NRTdeltaList:= [["%domain", NRTaddInner item], :$NRTdeltaList] -- remember the item's place in the `delta list' and its slot number -- before the recursive call to the compiler, as that might generate -- more references that would extend the `delta list'. |