diff options
author | BT Templeton <bpt@hcoop.net> | 2012-03-05 18:10:29 -0500 |
---|---|---|
committer | BT Templeton <bpt@hcoop.net> | 2012-03-05 18:10:29 -0500 |
commit | 663c5875f516ae9b36c6100dddd328de4c115147 (patch) | |
tree | fc681a3d74a79edc6c8b1c906502ae3821410fe5 | |
parent | 5ddd9645c94f339f8795bf9b3ece8d518a8de004 (diff) | |
download | guile-663c5875f516ae9b36c6100dddd328de4c115147.tar.gz |
use #nil as default for elisp rest parameters
* module/langauge/elisp/compile-tree-il.scm (compile-lambda): Bind the
rest parameter to `#nil' instead of `()' by default.
-rw-r--r-- | module/language/elisp/compile-tree-il.scm | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/module/language/elisp/compile-tree-il.scm b/module/language/elisp/compile-tree-il.scm index 293495495..1a4d00faa 100644 --- a/module/language/elisp/compile-tree-il.scm +++ b/module/language/elisp/compile-tree-il.scm @@ -326,7 +326,14 @@ (ensure-globals! loc dynamic-ids - (let* ((tree-il (compile-expr `(progn ,@forms))) + (let* ((tree-il + (compile-expr + (if rest-id + `(let ((,rest-id (if ,rest-id + ,rest-id + nil))) + ,@forms) + `(progn ,@forms)))) (full-body (if (null? dynamic) tree-il |