diff --git a/src/bignum.c b/src/bignum.c index 7baecfd2b57cb740e40f1338ecfa8620e0b11cd9..ad4b5282cbd7880845abaa7bf9029dced7475c4d 100644 --- a/src/bignum.c +++ b/src/bignum.c @@ -20,14 +20,14 @@ PMOD_EXPORT struct svalue auto_bignum_program = SVALUE_INIT_FREE; PMOD_EXPORT struct program *get_auto_bignum_program(void) { - return program_from_function(&auto_bignum_program); + return program_from_svalue(&auto_bignum_program); } PMOD_EXPORT struct program *get_auto_bignum_program_or_zero(void) { if (TYPEOF(auto_bignum_program) == PIKE_T_FREE) return 0; - return program_from_function(&auto_bignum_program); + return program_from_svalue(&auto_bignum_program); } void exit_auto_bignum(void) @@ -127,7 +127,7 @@ PMOD_EXPORT void (*push_ulongest) (unsigned LONGEST) = NULL; PMOD_EXPORT int (*ulongest_from_bignum) (unsigned LONGEST *, struct object *) = NULL; -PMOD_EXPORT MP_INT *(*mpz_from_bignum)(struct object *, int) = NULL; +PMOD_EXPORT int (*mpz_from_svalue)(MP_INT *, struct svalue *) = NULL; PMOD_EXPORT void (*push_bignum)(MP_INT *) = NULL; PMOD_EXPORT void hook_in_gmp_funcs ( @@ -138,7 +138,7 @@ PMOD_EXPORT void hook_in_gmp_funcs ( #endif void (*push_ulongest_val) (unsigned LONGEST), int (*ulongest_from_bignum_val) (unsigned LONGEST *, struct object *), - MP_INT *(*mpz_from_bignum_val)(struct object *, int), + int (*mpz_from_svalue_val)(MP_INT *, struct svalue *), void (*push_bignum_val)(MP_INT *)) { /* Assigning the pointers above directly from the Gmp module doesn't @@ -150,6 +150,6 @@ PMOD_EXPORT void hook_in_gmp_funcs ( #endif push_ulongest = push_ulongest_val; ulongest_from_bignum = ulongest_from_bignum_val; - mpz_from_bignum = mpz_from_bignum_val; + mpz_from_svalue = mpz_from_svalue_val; push_bignum = push_bignum_val; } diff --git a/src/bignum.h b/src/bignum.h index 55d6f3fe65812d2506c61340ef34549bcf8ec357..981b310571eefe1e950149fe4d690f22e4654233 100644 --- a/src/bignum.h +++ b/src/bignum.h @@ -269,7 +269,7 @@ PMOD_EXPORT extern int (*ulongest_from_bignum) (unsigned LONGEST *i, #define MP_INT void #endif -PMOD_EXPORT extern MP_INT *(*mpz_from_bignum)(struct object *, int); +PMOD_EXPORT extern int (*mpz_from_svalue)(MP_INT *, struct svalue *); PMOD_EXPORT extern void (*push_bignum)(MP_INT *); PMOD_EXPORT void hook_in_gmp_funcs ( @@ -280,7 +280,7 @@ PMOD_EXPORT void hook_in_gmp_funcs ( #endif void (*push_ulongest_val) (unsigned LONGEST), int (*ulongest_from_bignum_val) (unsigned LONGEST *, struct object *), - MP_INT *(*mpz_from_bignum_val)(struct object *, int), + int (*mpz_from_svalue_val)(MP_INT *, struct svalue *), void (*push_bignum_val)(MP_INT *)); /* Prototypes end here */