diff options
Diffstat (limited to 'stdlib/compiler.tl')
-rw-r--r-- | stdlib/compiler.tl | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/stdlib/compiler.tl b/stdlib/compiler.tl index 5ff71a96..52c9a908 100644 --- a/stdlib/compiler.tl +++ b/stdlib/compiler.tl @@ -656,6 +656,12 @@ me.(compile oreg env nil)) (((@(member @op %test-funs%) @a @b) . @rest) me.(compile oreg env ^(ift ,op ,a ,b ,*rest))) + (((@(or not null) @arg) @then @else) + me.(comp-if oreg env ^(if ,arg ,else ,then))) + (((@(or not null) @arg) @then) + me.(comp-if oreg env ^(if ,arg nil ,then))) + (((true @arg) . @args) + me.(comp-if oreg env ^(if ,arg ,*args))) ((@test @then @else) (let* ((te-oreg me.(maybe-alloc-treg oreg)) (lelse (gensym "l")) |