This commit is contained in:
Leonardo de Moura 2021-02-05 07:53:18 -08:00
parent 278d47c772
commit 10a10b38d8
2 changed files with 10 additions and 4 deletions

View file

@ -1336,12 +1336,17 @@ extern "C" object * lean_int_big_mul(object * a1, object * a2) {
}
extern "C" object * lean_int_big_div(object * a1, object * a2) {
if (lean_is_scalar(a1))
if (lean_is_scalar(a1)) {
return mpz_to_int(lean_scalar_to_int(a1) / mpz_value(a2));
else if (lean_is_scalar(a2))
return mpz_to_int(mpz_value(a1) / lean_scalar_to_int(a2));
else
} else if (lean_is_scalar(a2)) {
int d = lean_scalar_to_int(a2);
if (d == 0)
return a2;
else
return mpz_to_int(mpz_value(a1) / d);
} else {
return mpz_to_int(mpz_value(a1) / mpz_value(a2));
}
}
extern "C" object * lean_int_big_mod(object * a1, object * a2) {

1
tests/lean/run/303.lean Normal file
View file

@ -0,0 +1 @@
#eval (2147483648 / 0) + (-0)