summaryrefslogtreecommitdiffstats
path: root/struct.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2021-07-09 08:21:15 -0700
committerKaz Kylheku <kaz@kylheku.com>2021-07-09 08:21:15 -0700
commitf43fda4e635370689fc248bb7e94e5861151df2c (patch)
treed5db92bd69a4a3110aacc47cb3e8305975397129 /struct.c
parentc6cc120ad042fa234da17cf929c6fdfae1000a5b (diff)
downloadtxr-f43fda4e635370689fc248bb7e94e5861151df2c.tar.gz
txr-f43fda4e635370689fc248bb7e94e5861151df2c.tar.bz2
txr-f43fda4e635370689fc248bb7e94e5861151df2c.zip
defstruct: diagnose built-in type being redefined.
* eval.c (eval_init): Register built-in-type-p intrinsic. * lib.c (buitin_type_p): Rename to built_in_type_p since the word built-in is hyphenated. The function also tests whether the argument is a COBJ class. (cobj_class_exists): Function removed. * stdlib/doc-syms.tl: Updated. * stdlib/struct.tl (defstruct): Add built-in-type-p check. * struct.c (make_struct_type): Call only built_in_type_p; cobj_class_exists is gone. * txr.1: Document built-in-type-p.
Diffstat (limited to 'struct.c')
-rw-r--r--struct.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/struct.c b/struct.c
index aa6b86d1..2f643dae 100644
--- a/struct.c
+++ b/struct.c
@@ -439,7 +439,7 @@ val make_struct_type(val name, val supers,
lisplib_try_load(name);
- if (builtin_type_p(name) || cobj_class_exists(name))
+ if (built_in_type_p(name))
uw_throwf(error_s, lit("~a: ~s is a built-in type"),
self, name, nao);