* According to r4rs section 6.2, (eqv? 1 1.0) returns #f.

git-svn-id: svn://svn.zoy.org/elk/trunk@187 55e467fa-43c5-0310-a8a2-de718669efc6
This commit is contained in:
sam 2003-09-24 18:49:46 +00:00
parent b206e73e07
commit 2460afd80e
1 changed files with 6 additions and 1 deletions

View File

@ -62,8 +62,13 @@ int Eqv (Object x1, Object x2) {
return 1; return 1;
t1 = TYPE(x1); t1 = TYPE(x1);
t2 = TYPE(x2); t2 = TYPE(x2);
if (Numeric (t1) && Numeric (t2)) if (Numeric (t1) && Numeric (t2)) {
/* r4rs 6.2 states that (eqv? 1 1.0) ==> #f */
if(t1 == T_Flonum && t2 != T_Flonum
|| t1 != T_Flonum && t2 == T_Flonum)
return 0;
return Generic_Equal (x1, x2); return Generic_Equal (x1, x2);
}
if (t1 != t2) if (t1 != t2)
return 0; return 0;
switch (t1) { switch (t1) {