bug#17940: (begin)
Matt Wette <[email protected]>
| Newsgroups | gmane.lisp.guile.bugs |
|---|---|
| Message-ID | <[email protected]> |
I have run into this also, in writing macros. My workaround is to always add (if #f #f) in my forms that allow no expressions in the body. See second-to-last line below. (define-syntax sx-match-1 (syntax-rules () ((_ v (pat exp ...) c1 ...) (let ((kf (lambda () (sx-match-1 v c1 ...)))) (sxm-sexp v pat (begin (if #f #f) exp ...) (kf)))) ((_ v) (error "sx-match: nothing matches"))))