From ee89a54eb72128aa7c4655d12a5c5e9a97858172 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Tue, 19 Aug 2008 18:31:47 +0000 Subject: * interp/lisplib.boot (compDefineLisplib): Don't update $CategoryFrame with modemap for the constructor we just finished compiling. --- src/interp/define.boot | 4 ++-- src/interp/lisplib.boot | 3 --- src/interp/wi1.boot | 2 +- src/interp/wi2.boot | 2 +- 4 files changed, 4 insertions(+), 7 deletions(-) (limited to 'src/interp') diff --git a/src/interp/define.boot b/src/interp/define.boot index 75944abb..27b91ce9 100644 --- a/src/interp/define.boot +++ b/src/interp/define.boot @@ -335,7 +335,7 @@ compDefineCategory2(form,signature,specialCases,body,m,e, pairlis:= [[a,:v] for a in argl for v in $FormalMapVariableList] parSignature:= SUBLIS(pairlis,signature') parForm:= SUBLIS(pairlis,form) - rwriteLispForm('"compilerInfo", + evalAndRwriteLispForm('"compilerInfo", removeZeroOne ['SETQ,'$CategoryFrame, ['put,['QUOTE,op'],' (QUOTE isCategory),true,['addModemap,MKQ op',MKQ parForm, @@ -570,7 +570,7 @@ compDefineFunctor1(df is ['DEF,form,signature,$functorSpecialCases,body], $lisplibSlot1 := $NRTslot1Info --NIL or set by $NRTmakeSlot1 $lisplibOperationAlist:= operationAlist $lisplibMissingFunctions:= $CheckVectorList - rwriteLispForm('"compilerInfo", + evalAndRwriteLispForm('"compilerInfo", removeZeroOne ['SETQ,'$CategoryFrame, ['put,['QUOTE,op'],' (QUOTE isFunctor), diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot index 4cb029f2..c7d6a44c 100644 --- a/src/interp/lisplib.boot +++ b/src/interp/lisplib.boot @@ -381,9 +381,6 @@ compDefineLisplib(df:=["DEF",[op,:.],:.],m,e,prefix,fal,fn) == unloadOneConstructor(op,libName) LOCALDATABASE(LIST SYMBOL_-NAME getConstructorAbbreviationFromDB op,NIL) $newConlist := [op, :$newConlist] ----------> bound in function "compiler" - if $lisplibKind = 'category - then updateCategoryFrameForCategory op - else updateCategoryFrameForConstructor op res compileDocumentation libName == diff --git a/src/interp/wi1.boot b/src/interp/wi1.boot index 846e7183..798aae6b 100644 --- a/src/interp/wi1.boot +++ b/src/interp/wi1.boot @@ -1232,7 +1232,7 @@ compDefineCategory2(form,signature,specialCases,body,m,e, pairlis:= [[a,:v] for a in argl for v in $FormalMapVariableList] parSignature:= SUBLIS(pairlis,signature') parForm:= SUBLIS(pairlis,form) ----- rwriteLispForm('"compilerInfo", +---- evalAndRwriteLispForm('"compilerInfo", ---- ['SETQ,'$CategoryFrame, ---- ['put,['QUOTE,op'],' ---- (QUOTE isCategory),true,['addModemap,MKQ op',MKQ parForm, diff --git a/src/interp/wi2.boot b/src/interp/wi2.boot index 67b5e115..33768c2d 100644 --- a/src/interp/wi2.boot +++ b/src/interp/wi2.boot @@ -225,7 +225,7 @@ compDefineFunctor1(df, m,$e,$prefix,$formalArgList) == $lisplibSlot1 := $NRTslot1Info --NIL or set by $NRTmakeSlot1 $lisplibOperationAlist:= operationAlist $lisplibMissingFunctions:= $CheckVectorList - rwriteLispForm('"compilerInfo", + evalAndRwriteLispForm('"compilerInfo", ['SETQ,'$CategoryFrame, ['put,['QUOTE,op'],' (QUOTE isFunctor), -- cgit v1.2.3