aboutsummaryrefslogtreecommitdiff
path: root/src/interp
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-06-03 02:23:11 +0000
committerdos-reis <gdr@axiomatics.org>2008-06-03 02:23:11 +0000
commit6ee2b7e330751ab22c70d3abbef9e9523fa86036 (patch)
tree005a12bb2a99a82ae764a741922d75597328135e /src/interp
parent554dfb1181317ec273944a4387118d808fce0675 (diff)
downloadopen-axiom-6ee2b7e330751ab22c70d3abbef9e9523fa86036.tar.gz
* interp/define.boot (compDefineCategory): Check that a category
was indeed abbreviated a category.
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)