chicken-janitors
[Top][All Lists]
Advanced

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

[Chicken-janitors] #761: type-var unification for complex "pair" types n


From: Chicken Trac
Subject: [Chicken-janitors] #761: type-var unification for complex "pair" types not always right
Date: Wed, 21 Dec 2011 10:42:50 -0000

#761: type-var unification for complex "pair" types not always right
-------------------------+--------------------------------------------------
 Reporter:  felix        |       Owner:  felix
     Type:  defect       |      Status:  new  
 Priority:  major        |   Milestone:       
Component:  compiler     |     Version:  4.7.x
 Keywords:  scrutinizer  |  
-------------------------+--------------------------------------------------
 Consider:

 {{{
 (print (assq 'foo (the (pair (pair symbol fixnum) (pair (pair char fixnum)
 list)) x)))
 }}}

 Matching `(list-of (pair a b))` with the argument will unify a and b and
 then fail on the cdr of the pair type. This needs to be done analogous to
 a union type instead, so that multiple instantiations of the type
 variables are handled.

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