diff options
author | Kevin Ryde <user42@zip.com.au> | 2002-03-23 23:15:31 +0100 |
---|---|---|
committer | Kevin Ryde <user42@zip.com.au> | 2002-03-23 23:15:31 +0100 |
commit | 561b00c072f09836abce40fa8739d0b0c8cb7be7 (patch) | |
tree | 6ddfdbf26f706ff0b49786052e339e5c6de79529 /demos | |
parent | f413b4b9bf4c2fc31caa2f506b6878b472d09f74 (diff) | |
download | gmp-561b00c072f09836abce40fa8739d0b0c8cb7be7.tar.gz |
* demos/factorize.c: Use mpn_random() instead of random(), to avoid
portability problems.
Diffstat (limited to 'demos')
-rw-r--r-- | demos/factorize.c | 22 |
1 files changed, 5 insertions, 17 deletions
diff --git a/demos/factorize.c b/demos/factorize.c index 0eee2b470..467f13c87 100644 --- a/demos/factorize.c +++ b/demos/factorize.c @@ -27,22 +27,6 @@ int flag_verbose = 0; static unsigned add[] = {4, 2, 4, 2, 4, 6, 2, 6}; -#if defined (__hpux) || defined (__alpha) || defined (__svr4__) || defined (__SVR4) -/* HPUX lacks random(). DEC OSF/1 1.2 random() returns a double. */ -long mrand48 (); -static long -random () -{ - return mrand48 (); -} -#else -/* Glibc stdlib.h has "int32_t random();" which, on i386 at least, conflicts - with a redeclaration as "long". */ -#ifndef __GLIBC__ -long random (); -#endif -#endif - void factor_using_division (mpz_t t, unsigned int limit) { @@ -240,7 +224,11 @@ S4: if (!mpz_probab_prime_p (g, 3)) { do - a_int = random (); + { + mp_limb_t a_limb; + mpn_random (&a_limb, (mp_size_t) 1); + a_int = (int) a_limb; + } while (a_int == -2 || a_int == 0); if (flag_verbose) |