aboutsummaryrefslogtreecommitdiff
path: root/src/interp
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp')
-rw-r--r--src/interp/compiler.boot4
-rw-r--r--src/interp/define.boot4
2 files changed, 5 insertions, 3 deletions
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index 49aa460a..132ab160 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -1333,7 +1333,9 @@ compFromIf(a,m,E) ==
compImport: (%Form,%Mode,%Env) -> %Triple
compImport(["import",:doms],m,e) ==
- for dom in doms repeat e:=addDomain(dom,e)
+ if not $bootStrapMode then
+ for dom in doms repeat
+ e := addDomain(dom,e)
["/throwAway",$NoValueMode,e]
--% Foreign Function Interface
diff --git a/src/interp/define.boot b/src/interp/define.boot
index 23f1bef6..381756c3 100644
--- a/src/interp/define.boot
+++ b/src/interp/define.boot
@@ -1211,7 +1211,7 @@ putDomainsInScope(x,e) ==
getOperationAlist(name,functorForm,form) ==
if ident? name and niladicConstructor? name then
functorForm := [functorForm]
- (u:= isFunctor functorForm) and not
+ (u:= get(functorForm,'isFunctor,$CategoryFrame)) and not
($insideFunctorIfTrue and first functorForm=first $functorForm) => u
$insideFunctorIfTrue and name is "$" =>
$domainShell => categoryExports $domainShell
@@ -1811,7 +1811,7 @@ addDomain(domain,e) ==
getmode(name,e) is ["Mapping",target,:.] and isCategoryForm(target,e)=>
addNewDomain(domain,e)
-- constructor? test needed for domains compiled with $bootStrapMode=true
- isFunctor name or constructor? name => addNewDomain(domain,e)
+ isDomainForm(domain,e) => addNewDomain(domain,e)
-- ??? we should probably augment $DummyFunctorNames with CATEGORY
-- ??? so that we don't have to do this special check here. Investigate.
isQuasiquote domain => e