chicken-janitors
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-janitors] #398: Nested let-syntax failure to strip renamed iden


From: Chicken Trac
Subject: [Chicken-janitors] #398: Nested let-syntax failure to strip renamed identifiers
Date: Wed, 22 Sep 2010 19:26:01 -0000

#398: Nested let-syntax failure to strip renamed identifiers
-------------------------------------------+--------------------------------
 Reporter:  sjamaan                        |       Owner:       
     Type:  defect                         |      Status:  new  
 Priority:  minor                          |   Milestone:  4.7.0
Component:  unknown                        |     Version:  4.6.x
 Keywords:  expander, renamed identifiers  |  
-------------------------------------------+--------------------------------
 I dug up the old

 {{{
    (let ((a 1))
      (letrec-syntax
        ((foo (syntax-rules ()
                ((_ b)
                 (bar a b))))
         (bar (syntax-rules ()
                ((_ c d)
                 (cons c (let ((c 3))
                           (list d c 'c)))))))
         (let ((a 2))
           (foo a))))
 }}}

 This returns "(1 2 3 a0)" in Chicken. I think there's a missing call to
 ##sys#strip-syntax somewhere. I haven't looked into the expander code yet,
 but I wanted to post this so I don't forget.

-- 
Ticket URL: <http://bugs.call-cc.org/ticket/398>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]