Fix (matching (otherwise ...))
Tue Jan 12 09:20:28 UTC 2010 pix@kepibu.org
* Fix (matching (otherwise ...))
(matching (otherwise ...)) expands into (cond (otherwise ...)), which
generates an unbound-variable error when executed, because COND does
not special-case OTHERWISE as CASE does.
diff -rN -u old-cl-unification-1/match-block.lisp new-cl-unification-1/match-block.lisp
--- old-cl-unification-1/match-block.lisp 2013-07-21 19:25:45.000000000 +0000
+++ new-cl-unification-1/match-block.lisp 2013-07-21 19:25:45.000000000 +0000
@@ -210,7 +210,7 @@
(,errorp
(error 'unification-non-exhaustive
:format-control "Non exhaustive matching."))
- ,@(when default-clause (list default-clause))))))
+ ,(when default-clause (cons t (cdr default-clause)))))))
))