summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikael Djurfeldt <mikael@djurfeldt.com>2021-04-01 20:56:22 +0200
committerMikael Djurfeldt <mikael@djurfeldt.com>2021-04-01 20:56:22 +0200
commit01bfd18f3dad37ba5d4d7730a17895b637fd455c (patch)
tree66c667fbba45f96b7c584f0fd9eba65aafe2a4db
parent498564e3e3698565ed5e7697096dd57829d4b686 (diff)
downloadguile-01bfd18f3dad37ba5d4d7730a17895b637fd455c.tar.gz
Fix handling of parameter lists to elisp defun to allow nil.
Thanks to Vasilij Schneidermann.
-rw-r--r--NEWS6
-rw-r--r--module/language/elisp/compile-tree-il.scm1
2 files changed, 5 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index d11f38eb4..397ff6c43 100644
--- a/NEWS
+++ b/NEWS
@@ -194,9 +194,11 @@ See "Syntax Transformer Helpers" in the manual.
** Fix srfi-69 merge-hash
** Fix suspendable-ports implementation of get-bytevector-some!
** Fix overread in string-locale<?, string-locale-ci<?, and friends
+** Fix handling of parameter lists to elisp defun to allow nil
-Thanks to Andrey Ivanov, Rob Browning, Erik Dominikus, Göran Weinholt,
-Michael Gran, Andrew Whatson, and Ricardo G. Herdt.
+Thanks to Vasilij Schneidermann, Andrey Ivanov, Rob Browning, Erik
+Dominikus, Göran Weinholt, Michael Gran, Andrew Whatson, and Ricardo
+G. Herdt.
* New deprecations
diff --git a/module/language/elisp/compile-tree-il.scm b/module/language/elisp/compile-tree-il.scm
index 0334e6f33..adbeb2005 100644
--- a/module/language/elisp/compile-tree-il.scm
+++ b/module/language/elisp/compile-tree-il.scm
@@ -259,6 +259,7 @@
(define (%match lst null optional rest symbol)
(pmatch lst
(() (null))
+ (nil (null))
((&optional . ,tail) (optional tail))
((&rest . ,tail) (rest tail))
((,arg . ,tail) (guard (symbol? arg)) (symbol arg tail))