aboutsummaryrefslogtreecommitdiff
path: root/src/interp/define.boot
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2011-08-28 10:48:31 +0000
committerdos-reis <gdr@axiomatics.org>2011-08-28 10:48:31 +0000
commitf4c22b31e5b7232f5d41d8d729cbb7e0e633adee (patch)
tree35d1cec5fcf06fbe6bb030ecbd3eadb5c245f47b /src/interp/define.boot
parent6634594622ba229e94c7fba18430a5edbb8c22bc (diff)
downloadopen-axiom-f4c22b31e5b7232f5d41d8d729cbb7e0e633adee.tar.gz
* interp/define.boot (compDefineCategory2): Mark begining and end
of definition processing. (compDefineFunctor1): Likewise. * interp/daase.lisp (dbPrincipals): New accessor. * interp/br-data.boot (getDefaultPackageClients): Fix thinko. * interp/lisplib.boot (writeAncestors): New. (finalizeLisplib): Use it
Diffstat (limited to 'src/interp/define.boot')
-rw-r--r--src/interp/define.boot7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/interp/define.boot b/src/interp/define.boot
index 70800868..5331907c 100644
--- a/src/interp/define.boot
+++ b/src/interp/define.boot
@@ -998,7 +998,9 @@ compDefineCategory2(form,signature,specialCases,body,m,e,
--Set in DomainSubstitutionFunction, used further down
-- 1.1 augment e to add declaration $: <form>
[$op,:argl] := $definition
- dbInstanceCache(constructorDB $op) := true
+ db := constructorDB $op
+ dbBeingDefined?(db) := true
+ dbInstanceCache(db) := true
e:= addBinding("$",[['mode,:$definition]],e)
-- 2. obtain signature
@@ -1059,6 +1061,7 @@ compDefineCategory2(form,signature,specialCases,body,m,e,
$lisplibAncestors := computeAncestorsOf($form,nil)
form':=[op',:sargl]
augLisplibModemapsFromCategory(form',formalBody,signature')
+ dbBeingDefined?(db) := false
[fun,$Category,e]
mkConstructor: %Form -> %Form
@@ -1338,6 +1341,7 @@ compDefineFunctor1(df is ['DEF,form,signature,nils,body],
originale:= $e
[$op,:argl]:= form
db := constructorDB $op
+ dbBeingDefined?(db) := true
dbConstructorForm(db) := form
$formalArgList:= [:argl,:$formalArgList]
$pairlis: local := pairList(argl,$FormalMapVariableList)
@@ -1446,6 +1450,7 @@ compDefineFunctor1(df is ['DEF,form,signature,nils,body],
if $bootStrapMode then
evalAndRwriteLispForm('%incomplete,
['MAKEPROP, ['QUOTE,op'], ['QUOTE,'%incomplete], true])
+ dbBeingDefined?(db) := false
[fun,['Mapping,:signature'],originale]