GNU bug report logs -
#9567
curious match bug (?)
Previous Next
Reported by: Andy Wingo <wingo <at> pobox.com>
Date: Wed, 21 Sep 2011 03:36:01 UTC
Severity: normal
Done: ludo <at> gnu.org (Ludovic Courtès)
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Hi,
Try this:
(use-modules (language tree-il) (ice-9 match))
(define foo (parse-tree-il '(let-values (apply (lambda () (lambda-case ((() #f #f #f () ()) (apply (primitive values) (const 1) (const 2)))))) (lambda-case (((a b) #f #f #f () (#{a 134390}# #{b 134391}#)) (apply (primitive list) (lexical a #{a 134390}#) (lexical b #{b 134391}#)))))))
(match foo
(($ <let-values> src exp
($ <lambda-case> src2 req #f #f #f () gensyms body #f))
#t)
(_
#f))
=> #t
(match foo
(($ <let-values> src foo ;; <- rename "exp" to "foo"
($ <lambda-case> src2 req #f #f #f () gensyms body #f))
#t)
(_
#f))
=> #f
I tried to reduce this case a bit, but didn't succeed directly, and I
need to move on. But what is the deal here?
Andy
--
http://wingolog.org/
This bug report was last modified 13 years and 222 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.