diff options
Diffstat (limited to 'src/interp')
-rw-r--r-- | src/interp/br-data.boot | 2 | ||||
-rw-r--r-- | src/interp/define.boot | 14 | ||||
-rw-r--r-- | src/interp/lisplib.boot | 4 |
3 files changed, 7 insertions, 13 deletions
diff --git a/src/interp/br-data.boot b/src/interp/br-data.boot index 7de0092d..bc0554a5 100644 --- a/src/interp/br-data.boot +++ b/src/interp/br-data.boot @@ -622,7 +622,7 @@ ancestorsRecur(conform,domform,pred,firstTime?) == --called by ancestorsOf pred = tableValue($done,conform) => nil --skip if already processed parents := firstTime? and ($insideCategoryIfTrue or $insideFunctorIfTrue) => - $lisplibParents + dbPrincipals constructorDB op parentsOf op originalConform := firstTime? and ($insideCategoryIfTrue or $insideFunctorIfTrue) => $form diff --git a/src/interp/define.boot b/src/interp/define.boot index f5517e3e..ee3236ab 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -1055,12 +1055,10 @@ compDefineCategory2(form,signature,specialCases,body,m,e, $domainShell := eval [op',:[MKQ f for f in sargl]] dbConstructorModemap(constructorDB op') := [[parForm,:parSignature],[true,op']] $lisplibCategory:= formalBody + dbPrincipals(db) := getParentsFor(db,$FormalMapVariableList,$lisplibCategory) if $LISPLIB then - $lisplibParents := - getParentsFor(db,$FormalMapVariableList,$lisplibCategory) $lisplibAncestors := computeAncestorsOf($form,nil) - form':=[op',:sargl] - augLisplibModemapsFromCategory(form',formalBody,signature') + augLisplibModemapsFromCategory([op',:sargl],formalBody,signature') dbBeingDefined?(db) := false [fun,$Category,e] @@ -1421,11 +1419,9 @@ compDefineFunctor1(df is ['DEF,form,signature,nils,body], -- 5. give operator a 'modemap property modemap := [[parForm,:parSignature],[true,op']] dbConstructorModemap(constructorDB op') := modemap - if $LISPLIB then - $lisplibCategory := modemap.mmTarget - $lisplibParents := - getParentsFor(db,$FormalMapVariableList,$lisplibCategory) - $lisplibAncestors := computeAncestorsOf($form,nil) + $lisplibCategory := modemap.mmTarget + dbPrincipals(db) := getParentsFor(db,$FormalMapVariableList,$lisplibCategory) + $lisplibAncestors := computeAncestorsOf($form,nil) $insideFunctorIfTrue:= false if $LISPLIB then if not $bootStrapMode then diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot index 5d1446bc..7c03dce3 100644 --- a/src/interp/lisplib.boot +++ b/src/interp/lisplib.boot @@ -445,7 +445,6 @@ compConLib1(fun,infileOrNil,outfileOrNil,auxOp,editFlag,traceFlag) == $PrettyPrint: local := 'T $LISPLIB: local := 'T $lisplibPredicates: local := nil - $lisplibParents: local := nil $lisplibAncestors: local := nil $lisplibModemapAlist: local := nil $lisplibSlot1 : local := nil --used by NRT mechanisms @@ -472,7 +471,6 @@ compDefineLisplib(df:=["DEF",[op,:.],:.],m,e,prefix,fal,fn) == $LISPLIB: local := 'T $op: local := op $lisplibPredicates: local := nil -- set by makePredicateBitVector - $lisplibParents: local := nil $lisplibAncestors: local := nil $lisplibModemapAlist: local := nil $lisplibSlot1 : local := nil -- used by NRT mechanisms @@ -604,7 +602,7 @@ finalizeLisplib(ctor,libName) == writeAttributes(ctor,removeZeroOne dbAttributes db,$libFile) lisplibWrite('"predicates",removeZeroOne $lisplibPredicates,$libFile) lisplibWrite('"abbreviation",dbAbbreviation constructorDB ctor,$libFile) - writePrincipals(ctor,removeZeroOne $lisplibParents,$libFile) + writePrincipals(ctor,removeZeroOne dbPrincipals db,$libFile) writeAncestors(ctor,removeZeroOne $lisplibAncestors,$libFile) lisplibWrite('"documentation",finalizeDocumentation ctor,$libFile) lisplibWrite('"slot1Info",removeZeroOne $lisplibSlot1,$libFile) |