diff options
author | dos-reis <gdr@axiomatics.org> | 2011-09-06 22:33:36 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2011-09-06 22:33:36 +0000 |
commit | 1fed226a5d6875b82388a36c6edfd0cb37474f34 (patch) | |
tree | ecd00ec0f56e10a45c0ad70df1f32fac31c27521 /src | |
parent | 2f2f19f2d1cd9fd580f8ec719a26473defabce8f (diff) | |
download | open-axiom-1fed226a5d6875b82388a36c6edfd0cb37474f34.tar.gz |
* interp/define.boot (compDefineFunctor1): Set
dbConstructorModemap before compiling functor body.
Diffstat (limited to 'src')
-rw-r--r-- | src/ChangeLog | 5 | ||||
-rw-r--r-- | src/interp/define.boot | 8 |
2 files changed, 10 insertions, 3 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 3329af96..bc95dc64 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2011-09-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineFunctor1): Set + dbConstructorModemap before compiling functor body. + 2011-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> * interp/define.boot: Use DB for current constructor. diff --git a/src/interp/define.boot b/src/interp/define.boot index 7a1fe01b..23f1bef6 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -1377,6 +1377,10 @@ compDefineFunctor1(df is ['DEF,form,signature,nils,body], parSignature:= applySubst($pairlis,signature') parForm:= applySubst($pairlis,form) + -- 3. give operator a 'modemap property + modemap := [[parForm,:parSignature],[true,$op]] + dbConstructorModemap(db) := modemap + -- (3.1) now make a list of the functor's local parameters; for -- domain D in argl,check its signature: if domain, its type is Join(A1,..,An); -- in this case, D is replaced by D1,..,Dn (gensyms) which are set @@ -1411,9 +1415,7 @@ compDefineFunctor1(df is ['DEF,form,signature,nils,body], augmentLisplibModemapsFromFunctor(parForm,operationAlist,parSignature) reportOnFunctorCompilation() - -- 5. give operator a 'modemap property - modemap := [[parForm,:parSignature],[true,op']] - dbConstructorModemap(constructorDB op') := modemap + -- 5. $lisplibCategory := modemap.mmTarget dbPrincipals(db) := getParentsFor(db,$FormalMapVariableList,$lisplibCategory) dbAncestors(db) := computeAncestorsOf($form,nil) |