diff options
author | tege <tege@gmplib.org> | 1996-07-22 09:59:54 +0200 |
---|---|---|
committer | tege <tege@gmplib.org> | 1996-07-22 09:59:54 +0200 |
commit | 58e080a2cd3a3270b9299e915211863ed1957b5a (patch) | |
tree | 94cf28c50c5a6a28dd7cd8184f26addc20749a75 /mpz/invert.c | |
parent | 2ef05858c074cd1c504ee702308b9ac713d14461 (diff) | |
download | gmp-58e080a2cd3a3270b9299e915211863ed1957b5a.tar.gz |
Use MPZ_TMP_INIT, not mpz_init.
#include "gmp-impl.h".
Diffstat (limited to 'mpz/invert.c')
-rw-r--r-- | mpz/invert.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/mpz/invert.c b/mpz/invert.c index ff1d6d937..a38911442 100644 --- a/mpz/invert.c +++ b/mpz/invert.c @@ -22,6 +22,7 @@ the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "gmp.h" +#include "gmp-impl.h" int #if __STDC__ @@ -34,10 +35,16 @@ mpz_invert (inverse, x, n) { mpz_t gcd; int rv; + mp_size_t xsize, nsize, size; - mpz_init (gcd); + xsize = SIZ (x); + nsize = SIZ (n); + xsize = ABS (xsize); + nsize = ABS (nsize); + size = MAX (xsize, nsize) + 1; + + MPZ_TMP_INIT (gcd, size); mpz_gcdext (gcd, inverse, (mpz_ptr) 0, x, n); rv = gcd->_mp_size == 1 && (gcd->_mp_d)[0] == 1; - mpz_clear (gcd); return rv; } |