summaryrefslogtreecommitdiff
path: root/module/ice-9/psyntax-pp.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-09-03 02:51:00 -0400
committerAndy Wingo <wingo@pobox.com>2016-05-22 19:42:35 +0200
commitbb7075dc1a9084305160b690ad918cf98401e1dd (patch)
tree908af3f057833f09cd5c17adc6cbdb4d46e2404f /module/ice-9/psyntax-pp.scm
parenta04c849b096f01f2a73d3a9e7b395ca4c7f8df41 (diff)
downloadguile-bb7075dc1a9084305160b690ad918cf98401e1dd.tar.gz
psyntax: Fix bug in match-each+.
Reported by Panicz Maciej Godek <godek.maciek@gmail.com> in <http://lists.gnu.org/archive/html/guile-user/2015-09/msg00017.html>. * module/ice-9/psyntax.scm (match-each+): Fix the case where a non-pair syntax object is encountered in a dotted tail. * module/ice-9/psyntax-pp.scm: Regenerate.
Diffstat (limited to 'module/ice-9/psyntax-pp.scm')
-rw-r--r--module/ice-9/psyntax-pp.scm3
1 files changed, 2 insertions, 1 deletions
diff --git a/module/ice-9/psyntax-pp.scm b/module/ice-9/psyntax-pp.scm
index 0d30b7c3f..3cd6035f7 100644
--- a/module/ice-9/psyntax-pp.scm
+++ b/module/ice-9/psyntax-pp.scm
@@ -2509,7 +2509,8 @@
(values '() (cdr y-pat) (match (car e) (car y-pat) w r mod)))
(values #f #f #f)))))
((syntax-object? e)
- (f (syntax-object-expression e) (join-wraps w e)))
+ (f (syntax-object-expression e)
+ (join-wraps w (syntax-object-wrap e))))
(else (values '() y-pat (match e z-pat w r mod)))))))
(match-each-any
(lambda (e w mod)