chicken-janitors
[Top][All Lists]
Advanced

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

Re: [Chicken-janitors] #909: strange behaviour with define-record and mo


From: Chicken Trac
Subject: Re: [Chicken-janitors] #909: strange behaviour with define-record and modules
Date: Mon, 27 Aug 2012 18:41:02 -0000

#909: strange behaviour with define-record and modules
-----------------------------+----------------------------------------------
  Reporter:  megane          |       Owner:         
      Type:  defect          |      Status:  closed 
  Priority:  major           |   Milestone:  4.8.0  
 Component:  core libraries  |     Version:  4.8.x  
Resolution:  worksforme      |    Keywords:  modules
-----------------------------+----------------------------------------------
Changes (by sjamaan):

  * status:  new => closed
  * resolution:  => worksforme


Comment:

 I think this is normal, expected behavior.  It's functionally equivalent
 to:

 {{{
 #!scm
 (module m1 (blabla)
   (import chicken scheme)
   (define blabla 1))

 (module m2 (blabla)
   (import chicken scheme m1)
   (define blabla 2))

 ;;; This will show you: Warning: redefinition of imported value binding:
 blabla

 (import m1)
 (print blabla)
 ;; 2 is printed
 }}}

 Your test example can be "fixed" by either omitting or renaming {{{make-
 foo}}} from the import specifier for {{{m1}}}. But note that this isn't
 currently going to work, because record type names must be globally unique
 (this is arguably a bug which we've tried to fix but the initial fix broke
 more than it fixed, so we had to revert it)

 If you disagree this is normal, please re-open this ticket.

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