chicken-janitors
[Top][All Lists]
Advanced

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

[Chicken-janitors] #235: > < >= <= = 2-arg compiler rewrites are broken


From: Chicken Trac
Subject: [Chicken-janitors] #235: > < >= <= = 2-arg compiler rewrites are broken
Date: Fri, 14 May 2010 01:07:35 -0000

#235: > < >= <= = 2-arg compiler rewrites are broken
----------------------+-----------------------------------------------------
 Reporter:  zbigniew  |       Owner:  felix
     Type:  defect    |      Status:  new  
 Priority:  critical  |   Milestone:  4.6.0
Component:  compiler  |     Version:  4.5.0
 Keywords:            |  
----------------------+-----------------------------------------------------
 The implementation of C_i_greaterp does not throw an error when the first
 argument is not a number.

 See example at http://paste.lisp.org/display/99206

 I believe this is because it does not check the argument type of x, only
 y.  Instead if x is not a fixnum or flonum, C_i_greaterp just returns #f.

 In other words it is missing:
 else barf(C_BAD_ARGUMENT_TYPE_ERROR, ">", x);

 I also believe C_i_nequalp, C_i_greaterp, C_i_lessp,
 C_i_greater_or_equalp, C_i_less_or_equalp are all affected.

-- 
Ticket URL: <http://www.irp.oist.jp/trac/chicken/ticket/235>
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]