chicken-janitors
[Top][All Lists]
Advanced

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

[Chicken-janitors] Re: #444: Symbol lookup fails in modules in conjuncti


From: Chicken Trac
Subject: [Chicken-janitors] Re: #444: Symbol lookup fails in modules in conjunction with renaming macros
Date: Thu, 09 Dec 2010 19:42:48 -0000

#444: Symbol lookup fails in modules in conjunction with renaming macros
-----------------------+----------------------------------------------------
  Reporter:  syn       |       Owner:  felix   
      Type:  defect    |      Status:  assigned
  Priority:  major     |   Milestone:  4.7.0   
 Component:  expander  |     Version:  4.6.x   
Resolution:            |    Keywords:          
-----------------------+----------------------------------------------------

Comment(by sjamaan):

 Here's a testcase that also fails with the other macro system, plus a
 patch that fixes it. It causes strip-syntax to strip syntax off of
 primitives too. This is neccessary since macro syntax environments inside
 modules always contain all imported bindings, which includes {{(void .
 #%void)}}. This is always rewritten for syntax-rules and stripping syntax
 should restore this back to the original symbol "void".

 Applying this patch also fixes the testcase in the other patch.  I think
 both patches should be applied, probably.  I can't currently think of a
 case which would break but I'm sure with deeply nested macros the earlier
 patch provides some added robustness.

-- 
Ticket URL: <http://bugs.call-cc.org/ticket/444#comment:12>
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]