diff options
author | Gabriel Dos Reis <gdr@axiomatics.org> | 2016-02-08 21:50:52 -0800 |
---|---|---|
committer | Gabriel Dos Reis <gdr@axiomatics.org> | 2016-02-08 21:50:52 -0800 |
commit | f49b0656655f43f8aab325f8b24537edacb9f382 (patch) | |
tree | 5cb4c06504aae69d33cee0536c0457d16a3ad9ac | |
parent | e4c7fc35015d5a0c5bceb993ecdb9d5da5ddbb61 (diff) | |
download | open-axiom-f49b0656655f43f8aab325f8b24537edacb9f382.tar.gz |
Do not let domain closure escape lookupDefinitionFunction
A successful call to compiledLookup will come up with any of the form
that results from stuffSlot. Handle them here. Remove confused and
dead code.
-rw-r--r-- | src/interp/c-util.boot | 5 | ||||
-rw-r--r-- | src/interp/nruncomp.boot | 6 |
2 files changed, 4 insertions, 7 deletions
diff --git a/src/interp/c-util.boot b/src/interp/c-util.boot index 70675bf0..0558402a 100644 --- a/src/interp/c-util.boot +++ b/src/interp/c-util.boot @@ -1732,7 +1732,10 @@ lookupDefiningFunction(op,sig,dc) == -- such as AN ~> IAN ~> EXPR INT ~> AN that prevents -- us from full evaluation. args = nil and symbolMember?(ctor,$SystemInlinableConstructorNames) => - compiledLookup(op,sig,dc) + env := compiledLookup(op,sig,dc) or return nil + env is ['newGoGet,:.] => nil -- FIXME: Follow the link! + env is ['makeSpadConstant,fun,:.] => BPINAME fun + BPINAME first env -- 1.2. Don't look into defaulting package isDefaultPackageName ctor => nil infovec := property(ctor,'infovec) or return nil diff --git a/src/interp/nruncomp.boot b/src/interp/nruncomp.boot index cbbabadc..dc2a7405 100644 --- a/src/interp/nruncomp.boot +++ b/src/interp/nruncomp.boot @@ -176,12 +176,6 @@ optDeltaEntry(op,sig,dc,kind,e) == MKQ x fun := lookupDefiningFunction(op,nsig,ndc) fun = nil => nil - fun := - fun is ['makeSpadConstant,:.] and - (fun' := getFunctionReplacement second fun) => - return fun' - cons? fun => first fun - fun markOperation getFunctionReplacement fun ++ True if we are interested only in abstract slot, not the actual |