summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/012/struct.tl29
1 files changed, 17 insertions, 12 deletions
diff --git a/tests/012/struct.tl b/tests/012/struct.tl
index 5be89cab..3eb5563c 100644
--- a/tests/012/struct.tl
+++ b/tests/012/struct.tl
@@ -70,18 +70,23 @@
(set *gensym-counter* 0)
(stest (sys:expand '(defstruct (boa x y) nil
(x 0) (y 0)))
- "(make-struct-type 'boa '() '(x y)\n \
- \ (lambda (#:g0004)\n \
- \ (slotset #:g0004 'x\n \
- \ 0)\n \
- \ (slotset #:g0004 'y\n \
- \ 0))\n \
- \ (lambda (#:g0004 #:g0005\n \
- \ #:g0006)\n \
- \ (slotset #:g0004 'x\n \
- \ #:g0005)\n \
- \ (slotset #:g0004 'y\n \
- \ #:g0006)))")
+ "(sys:make-struct-type 'boa '() '()\n \
+ \ '(x y) (lambda (#:g0004))\n \
+ \ (lambda (#:g0004)\n \
+ \ (let ((#:g0005 (struct-type #:g0004)))\n\
+ \ (if (static-slot-p #:g0005 'x)\n \
+ \ () (progn (slotset #:g0004 'x\n \
+ \ 0)))\n \
+ \ (if (static-slot-p #:g0005 'y)\n \
+ \ () (progn (slotset #:g0004 'y\n \
+ \ 0)))))\n \
+ \ (lambda (#:g0004 #:g0006\n \
+ \ #:g0007)\n \
+ \ (slotset #:g0004 'x\n \
+ \ #:g0006)\n \
+ \ (slotset #:g0004 'y\n \
+ \ #:g0007)))")
+
(defstruct (boa x y) nil
(x 0) (y 0))