[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug-kawa] [bug #21316] Wrong binding within syntax-rules when actual pa
From: |
Mark Rose |
Subject: |
[Bug-kawa] [bug #21316] Wrong binding within syntax-rules when actual parameter name matches formal |
Date: |
Wed, 10 Oct 2007 15:30:24 +0000 |
User-agent: |
Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7 |
URL:
<http://savannah.gnu.org/bugs/?21316>
Summary: Wrong binding within syntax-rules when actual
parameter name matches formal
Project: Kawa
Submitted by: markrose
Submitted on: Wednesday 10/10/2007 at 15:30
Category: Scheme language
Severity: 3 - Normal
Item Group: Unexpected result
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
_______________________________________________________
Details:
One of Al Petrofsky's macro definition test cases, from
http://petrofsky.org/src/primer.txt:
(let ((x 1))
(let-syntax
((foo (syntax-rules ()
((_ y) (let-syntax
((bar (syntax-rules ()
((_ x) y))))
(bar 2))))))
(foo x)))
Kawa 1.9.2 gives an answer of "2". However, renaming all the bindings to
unique values (which should make no difference), changes the answer to the
correct "1":
(let ((x_1 1))
(let-syntax
((foo_2 (syntax-rules ()
((_ y_3) (let-syntax
((bar_4 (syntax-rules ()
((_ x_5) y_3))))
(bar_4 2))))))
(foo_2 x_1)))
_______________________________________________________
Reply to this item at:
<http://savannah.gnu.org/bugs/?21316>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
- [Bug-kawa] [bug #21316] Wrong binding within syntax-rules when actual parameter name matches formal,
Mark Rose <=