manuel-serrano / bigloo

a practical Scheme compiler
http://www-sop.inria.fr/indes/fp/Bigloo
Other
133 stars 20 forks source link

correct bignum promotion logic in SAFE_MINUS_* in jvm backend #85

Closed donaldsonjw closed 1 year ago

donaldsonjw commented 1 year ago

Previously, we improperly promoted to bignum operations when the results had not breached the constraints of bint. For example, (- -7 -8) resulted in #z1 instead of simply 1. This change aligns the jvm logic used for SAFEMINUS* with the c logic used for the native backend.

manuel-serrano commented 1 year ago

Hi Joe,

Ah! You are just right. Thanks a million for the fix.