diff options
author | Marco Bodrato <bodrato@mail.dm.unipi.it> | 2013-01-26 10:31:44 +0100 |
---|---|---|
committer | Marco Bodrato <bodrato@mail.dm.unipi.it> | 2013-01-26 10:31:44 +0100 |
commit | 5ed4c36979c6b3e19a2495be3300d1105b915ea5 (patch) | |
tree | 23e074edb7fcb439064361ac5382579903ccc0d1 | |
parent | 745b1383c60ad38682118ae23ee538a34ead0682 (diff) | |
download | gmp-5ed4c36979c6b3e19a2495be3300d1105b915ea5.tar.gz |
mpz/remove.c: init+set=init_set, cast before shifting
-rw-r--r-- | mpz/remove.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/mpz/remove.c b/mpz/remove.c index a1283eed8..b3bb4ef0b 100644 --- a/mpz/remove.c +++ b/mpz/remove.c @@ -78,8 +78,7 @@ mpz_remove (mpz_ptr dest, mpz_srcptr src, mpz_srcptr f) mpz_init (x); pwr = 0; - mpz_init (fpow[0]); - mpz_set (fpow[0], f); + mpz_init_set (fpow[0], f); mpz_set (dest, src); /* Divide by f, f^2 ... f^(2^k) until we get a remainder for f^(2^k). */ @@ -93,7 +92,7 @@ mpz_remove (mpz_ptr dest, mpz_srcptr src, mpz_srcptr f) mpz_set (dest, x); } - pwr = (1L << p) - 1; + pwr = ((mp_bitcnt_t)1 << p) - 1; mpz_clear (fpow[p]); @@ -104,7 +103,7 @@ mpz_remove (mpz_ptr dest, mpz_srcptr src, mpz_srcptr f) mpz_tdiv_qr (x, rem, dest, fpow[p]); if (SIZ (rem) == 0) { - pwr += 1L << p; + pwr += (mp_bitcnt_t)1 << p; mpz_set (dest, x); } mpz_clear (fpow[p]); |