diff options
Diffstat (limited to 'test-suite/tests/tree-il.test')
-rw-r--r-- | test-suite/tests/tree-il.test | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test-suite/tests/tree-il.test b/test-suite/tests/tree-il.test index a59835e0e..3dacb7277 100644 --- a/test-suite/tests/tree-il.test +++ b/test-suite/tests/tree-il.test @@ -474,6 +474,26 @@ (program () (std-prelude 0 0 #f) (label _) (const 2) (call null? 1) (call return 1)))) +(with-test-prefix "values" + (assert-tree-il->glil + (primcall values + (primcall values (const 1) (const 2))) + (program () (std-prelude 0 0 #f) (label _) + (const 1) (call return 1))) + + (assert-tree-il->glil + (primcall values + (primcall values (const 1) (const 2)) + (const 3)) + (program () (std-prelude 0 0 #f) (label _) + (const 1) (const 3) (call return/values 2))) + + (assert-tree-il->glil + (primcall + + (primcall values (const 1) (const 2))) + (program () (std-prelude 0 0 #f) (label _) + (const 1) (call return 1)))) + ;; FIXME: binding info for or-hacked locals might bork the disassembler, ;; and could be tightened in any case (with-test-prefix "the or hack" |