aboutsummaryrefslogtreecommitdiff
path: root/src/interp
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp')
-rw-r--r--src/interp/define.boot5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/interp/define.boot b/src/interp/define.boot
index 959f313e..789ff2c8 100644
--- a/src/interp/define.boot
+++ b/src/interp/define.boot
@@ -371,6 +371,11 @@ mkConstructor form ==
compDefineCategory(df,m,e,prefix,fal) ==
$domainShell: local -- holds the category of the object being compiled
$lisplibCategory: local := nil
+ -- since we have so many ways to say state the kind of a constructor,
+ -- make sure we do have some minimal internal coherence.
+ ctor := opOf second df
+ kind := getConstructorKindFromDB ctor
+ kind ^= "category" => throwKeyedMsg("S2IC0016",[ctor,"category",kind])
not $insideFunctorIfTrue and $LISPLIB =>
compDefineLisplib(df,m,e,prefix,fal,'compDefineCategory1)
compDefineCategory1(df,m,e,prefix,fal)