~ chicken-core (chicken-5) 3591398e5e6145cdf62dc6d107b2361838f19b3b
commit 3591398e5e6145cdf62dc6d107b2361838f19b3b Author: LemonBoy <thatlemon@gmail.com> AuthorDate: Mon May 1 13:27:06 2017 +0200 Commit: Evan Hanson <evhan@foldling.org> CommitDate: Wed May 3 08:36:51 2017 +1200 Make fx*? aware of non-fixnum arguments This brings it in line with the other overflow-aware operators. Signed-off-by: Evan Hanson <evhan@foldling.org> diff --git a/runtime.c b/runtime.c index 00b9a557..86db413d 100644 --- a/runtime.c +++ b/runtime.c @@ -9204,6 +9204,8 @@ C_regparm C_word C_fcall C_i_o_fixnum_times(C_word n1, C_word n2) C_uword c = 1UL<<31UL; #endif + if((n1 & C_FIXNUM_BIT) == 0 || (n2 & C_FIXNUM_BIT) == 0) return C_SCHEME_FALSE; + if((n1 & C_INT_SIGN_BIT) == (n2 & C_INT_SIGN_BIT)) --c; x1 = C_unfix(n1);Trap