From 974674143225554b96178718d83134946c58beb3 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Wed, 15 May 2013 18:47:34 +0000 Subject: * interp/define.boot (dbClearForCompilation!): New. (compDefineFunctor1): Use it. --- src/interp/define.boot | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/interp/define.boot') diff --git a/src/interp/define.boot b/src/interp/define.boot index 7228ea44..6603f489 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -1384,6 +1384,13 @@ AMFCR_,redefined(opname,u) == op in '(PROGN SEQ) => AMFCR_,redefinedList(opname,l) op = '%when => "OR"/[AMFCR_,redefinedList(opname,rest u) for u in l] +dbClearForCompilation! db == + dbTemplate(db) := nil + dbLookupFunction(db) := nil + dbCapsuleDefinitions(db) := nil + dbModemaps(db) := nil + dbDocumentation(db) := nil + substituteCategoryArguments(argl,catform) == argl := substitute("$$","$",argl) applySubst(pairList($FormalMapVariableList,argl),catform) @@ -1417,12 +1424,10 @@ compDefineFunctor1(df is ['DEF,form,signature,body],m,$e,$formalArgList) == $genSDVar: local:= 0 originale:= $e db := constructorDB $op + dbClearForCompilation! db dbConstructorForm(db) := form dbCompilerData(db) := makeCompilationData() dbFormalSubst(db) := pairList(form.args,$FormalMapVariableList) - dbTemplate(db) := nil - dbLookupFunction(db) := nil - dbCapsuleDefinitions(db) := nil $e := registerConstructor($op,$e) deduceImplicitParameters(db,$e) $formalArgList:= [:form.args,:$formalArgList] -- cgit v1.2.3