aboutsummaryrefslogtreecommitdiffstats
path: root/csc/cps-test.csc
diff options
context:
space:
mode:
Diffstat (limited to 'csc/cps-test.csc')
-rw-r--r--csc/cps-test.csc26
1 files changed, 26 insertions, 0 deletions
diff --git a/csc/cps-test.csc b/csc/cps-test.csc
index 5bd6c1a..0aead27 100644
--- a/csc/cps-test.csc
+++ b/csc/cps-test.csc
@@ -3,12 +3,15 @@
map->alist)
(only (csc ir1)
make-constant
+ make-define-syntax
+ make-if
make-lexical-ref
make-lexical-set
make-library-ref)
(only (csc ir2)
ir2=?
make-atom
+ make-branch
make-kargs
make-ktail
make-update)
@@ -73,3 +76,26 @@
(make-update (make-lexical-ref 'var #f)
(make-lexical-ref 'generated-symbol #f) 1))))
(soup->alist (ir1->ir2 (make-lexical-set (make-lexical-ref 'var #f) (make-constant 5))))))
+
+
+(test no-op-define-syntax
+ (assert-equal soup=?
+ (list
+ (cons 0 (make-kargs '() (make-atom (make-constant #f) 1)))
+ (cons 1 (make-ktail)))
+ (soup->alist (ir1->ir2 (make-define-syntax 'name '(transformer))))))
+
+
+(test branch
+ (assert-equal soup=?
+ (list
+ (cons 0 (make-kargs '() (make-atom (make-constant #t) 2)))
+ (cons 1 (make-ktail))
+ (cons 2 (make-kargs (list (make-lexical-ref 'generated-symbol #f))
+ (make-branch (make-lexical-ref 'generated-symbol #f)
+ 3 4)))
+ (cons 3 (make-kargs '() (make-atom (make-constant 1) 1)))
+ (cons 4 (make-kargs '() (make-atom (make-constant 2) 1))))
+ (soup->alist (ir1->ir2 (make-if (make-constant #t)
+ (make-constant 1)
+ (make-constant 2))))))