On Sat, Jun 22, 2019 at 05:50:30PM +0200, Sven Hartrumpf wrote: > Hello. > > I have a strange problem with legacy code that works in many > other Schemes and Chicken 5 csi, but the binary compiled with Chicken 5 > crashes.
It looks like the bug happens in lookup_prob in the let*. (value (or (phashtable-get current_hashtable current_tokens) 0.0)) is compiled to f0=C_flonum_magnitude((C_truep(t1)?t1:lf[3]));, but that's wrong because t1 is a fixnum. It's easy to find if you compile this with a DEBUGBUILD version of CHICKEN, it says: [panic] Low-level type assertion C_blockp((C_word)C_VAL1(C__PREV_TMPST.n1))=#t failed at chickenprob3.c:93488 - execution terminated I have yet to find out exactly what's going on, but my bet is on this change in core: 79cf7427638eebf695f2be54731bb6bbf4d0fff2 (the lfa2 unboxing pass) Cheers, Peter
signature.asc
Description: PGP signature
_______________________________________________ Chicken-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/chicken-users
