﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	difficulty
1152	Reserved pattern symbols break when a binding of the same name exists	Moritz Heidkamp	Alex Shinn	"When reserved pattern symbols like {{{?}}} or {{{_}}} are bound in the lexical environment of a {{{match}}} expression, they don't work anymore:

{{{
(import matchable)

(let ((? 1))
  (match '(x y)
    ((? odd?) (print ?))))

(match '(x y)
  ((_ _) (print 'ok)))

(let ((_ 1))
  (match '(x y)
    ((_ _) (print 'ok))))
}}}

Output:

{{{
$ csc matchbug.scm && ./matchbug
x
ok

Error: (match) no matching pattern

	Call history:

	matchbug.scm:5: print	  
	matchbug.scm:8: print	  
	matchbug.scm:10: failure391	  
	matchbug.scm:10: error	  	<--
}}}"	defect	closed	major	someday	extensions	4.9.x	wontfix	matchable egg		
