summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2022-10-04 22:40:44 -0700
committerKaz Kylheku <kaz@kylheku.com>2022-10-04 22:40:44 -0700
commit8ec4ac6b8a529489158a9a8346c1bb0f33ea2b8a (patch)
tree9a4e24b35bcff217e7e265f0a03fbde163ed1a19
parentbf35c239b435fa34bf3e5b1b286d66ecfbd7ca0a (diff)
downloadtxr-8ec4ac6b8a529489158a9a8346c1bb0f33ea2b8a.tar.gz
txr-8ec4ac6b8a529489158a9a8346c1bb0f33ea2b8a.tar.bz2
txr-8ec4ac6b8a529489158a9a8346c1bb0f33ea2b8a.zip
define-struct-clause: reject :postfini
* stdlib/struct.tl (define-struct-clause): Disallow the :postfini keyword as clause name. * txr.1: Documented.
-rw-r--r--stdlib/struct.tl2
-rw-r--r--txr.15
2 files changed, 4 insertions, 3 deletions
diff --git a/stdlib/struct.tl b/stdlib/struct.tl
index 97a7d9ed..2955af7c 100644
--- a/stdlib/struct.tl
+++ b/stdlib/struct.tl
@@ -398,7 +398,7 @@
,body)))
(defmacro define-struct-clause (:form form keyword (. params) . body)
- (if (meq keyword :static :instance :function :method :init :postinit :fini)
+ (if (meq keyword :static :instance :function :method :init :postinit :fini :postfini)
(compile-error form "~s is a reserved defstruct clause keyword" keyword))
(unless (keywordp keyword)
(compile-error form "~s: clauses must be named by keyword symbols" keyword))
diff --git a/txr.1 b/txr.1
index 7f7ac353..18a23f7f 100644
--- a/txr.1
+++ b/txr.1
@@ -31891,9 +31891,10 @@ The built-in clause keywords
.codn :function ,
.codn :method ,
.codn :init ,
-.code :postinit
-and
+.codn :postinit ,
.code :fini
+and
+.codn :postfini .
may not be used as the names of a struct clause macro; if any of these
symbols is used as the
.meta keyword