chicken-janitors
[Top][All Lists]
Advanced

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

[Chicken-janitors] Re: #445: define-record doesn't respect scope rules


From: Chicken Trac
Subject: [Chicken-janitors] Re: #445: define-record doesn't respect scope rules
Date: Thu, 16 Dec 2010 17:15:43 -0000

#445: define-record doesn't respect scope rules
-----------------------+----------------------------------------------------
  Reporter:  mario     |       Owner:  felix   
      Type:  defect    |      Status:  assigned
  Priority:  major     |   Milestone:  4.7.0   
 Component:  expander  |     Version:  4.6.x   
Resolution:            |    Keywords:          
-----------------------+----------------------------------------------------
Changes (by felix):

  * component:  unknown => expander


Comment:

 Replying to [comment:6 sjamaan]:
 >
 > I fixed this by looking up the value in the current syntax env and if
 it's a macro comparing its handler to all handlers in the core syntax env.
 If the handler is found, use the name that handler is bound to in the core
 syntax env.
 >
 > If the name is not found in the current syntax env, the name is just
 returned as that name would be looked up in the core syntax env by the
 macro expander, so it's either already the core name, or simply not a
 macro at all.
 >

 I think it would be a bit simpler to just remember the SE-entries
 generated in the initial macro-env (I changed `##sys#extend-macro-
 environment` recently to return the entry) and directly compare the
 resolved name with the entry. What do you think?

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