cvs: php4 /ext/gmp gmp.c

From: Date: Tue, 07 Aug 2001 17:57:55 +0000
Subject: cvs: php4 /ext/gmp gmp.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-6631@lists.php.net to get a copy of this message
sniper Tue Aug 7 13:57:55 2001 EDT Modified files: /php4/ext/gmp gmp.c Log: Another TSRM fix. Plus killed some compile warnings. Index: php4/ext/gmp/gmp.c diff -u php4/ext/gmp/gmp.c:1.16 php4/ext/gmp/gmp.c:1.17 --- php4/ext/gmp/gmp.c:1.16 Sun Aug 5 10:48:17 2001 +++ php4/ext/gmp/gmp.c Tue Aug 7 13:57:55 2001 @@ -137,9 +137,7 @@ */ ZEND_MINIT_FUNCTION(gmp) { - le_gmp = zend_register_list_destructors_ex(_php_gmpnum_free, NULL, - GMP_RESOURCE_NAME, - module_number); + le_gmp = zend_register_list_destructors_ex(_php_gmpnum_free, NULL, GMP_RESOURCE_NAME, module_number); REGISTER_LONG_CONSTANT("GMP_ROUND_ZERO", GMP_ROUND_ZERO, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("GMP_ROUND_PLUSINF", GMP_ROUND_PLUSINF, CONST_CS | CONST_PERSISTENT); REGISTER_LONG_CONSTANT("GMP_ROUND_MINUSINF", GMP_ROUND_MINUSINF, CONST_CS | CONST_PERSISTENT); @@ -242,8 +240,8 @@ typedef unsigned long (*gmp_binary_ui_op2_t)(mpz_ptr, mpz_ptr, mpz_srcptr, unsigned long); /* }}} */ -#define gmp_zval_binary_ui_op(r,a,b,o,u) gmp_zval_binary_ui_op_ex(r,a,b,o,u,0) -#define gmp_zval_binary_ui_op2(r,a,b,o,u) gmp_zval_binary_ui_op2_ex(r,a,b,o,u,0) +#define gmp_zval_binary_ui_op(r,a,b,o,u) gmp_zval_binary_ui_op_ex(r,a,b,o,u,0 TSRMLS_CC) +#define gmp_zval_binary_ui_op2(r,a,b,o,u) gmp_zval_binary_ui_op2_ex(r,a,b,o,u,0 TSRMLS_CC) #define gmp_binary_ui_op(op,uop) _gmp_binary_ui_op(INTERNAL_FUNCTION_PARAM_PASSTHRU, op, uop) #define gmp_binary_op(op) _gmp_binary_ui_op(INTERNAL_FUNCTION_PARAM_PASSTHRU, op, NULL) @@ -258,9 +256,10 @@ Execute GMP binary operation. May return GMP resource or long if operation allows this */ -static inline void gmp_zval_binary_ui_op_ex(zval *return_value, zval **a_arg, zval **b_arg, gmp_binary_op_t gmp_op, gmp_binary_ui_op_t gmp_ui_op, int allow_ui_return) { +static inline void gmp_zval_binary_ui_op_ex(zval *return_value, zval **a_arg, zval **b_arg, gmp_binary_op_t gmp_op, gmp_binary_ui_op_t gmp_ui_op, int allow_ui_return TSRMLS_DC) +{ mpz_t *gmpnum_a, *gmpnum_b, *gmpnum_result; - unsigned long long_result; + unsigned long long_result=0; int use_ui=0; FETCH_GMP_ZVAL(gmpnum_a, a_arg); @@ -294,7 +293,8 @@ Execute GMP binary operation which returns 2 values. May return GMP resources or longs if operation allows this. */ -static inline void gmp_zval_binary_ui_op2_ex(zval *return_value, zval **a_arg, zval **b_arg, gmp_binary_op2_t gmp_op, gmp_binary_ui_op2_t gmp_ui_op, int allow_ui_return) { +static inline void gmp_zval_binary_ui_op2_ex(zval *return_value, zval **a_arg, zval **b_arg, gmp_binary_op2_t gmp_op, gmp_binary_ui_op2_t gmp_ui_op, int allow_ui_return TSRMLS_DC) +{ mpz_t *gmpnum_a, *gmpnum_b, *gmpnum_result1, *gmpnum_result2; zval r; int use_ui=0; @@ -351,9 +351,10 @@ /* {{{ gmp_zval_unary_op */ -static inline void gmp_zval_unary_op(zval *return_value, zval **a_arg, gmp_unary_op_t gmp_op) { +static inline void gmp_zval_unary_op(zval *return_value, zval **a_arg, gmp_unary_op_t gmp_op TSRMLS_DC) +{ mpz_t *gmpnum_a, *gmpnum_result; - + FETCH_GMP_ZVAL(gmpnum_a, a_arg); INIT_GMP_NUM(gmpnum_result); @@ -400,7 +401,7 @@ WRONG_PARAM_COUNT; } - gmp_zval_unary_op(return_value,a_arg,gmp_op); + gmp_zval_unary_op(return_value,a_arg,gmp_op TSRMLS_CC); } /* }}} */ @@ -495,7 +496,7 @@ ZEND_FUNCTION(gmp_strval) { zval **gmpnumber_arg, **base_arg; - int base, num_len, argc; + int base=10, num_len, argc; mpz_t * gmpnum; char *out_string; @@ -562,7 +563,7 @@ ZEND_FUNCTION(gmp_div_qr) { zval **a_arg, **b_arg, **round_arg; - int round, argc; + int round=GMP_ROUND_ZERO, argc; argc = ZEND_NUM_ARGS(); if (argc < 2 || argc > 3 || zend_get_parameters_ex(argc, &a_arg, &b_arg, &round_arg) == FAILURE){ @@ -599,7 +600,7 @@ ZEND_FUNCTION(gmp_div_r) { zval **a_arg, **b_arg, **round_arg; - int round, argc; + int round=GMP_ROUND_ZERO, argc; argc = ZEND_NUM_ARGS(); if (argc < 2 || argc > 3 || zend_get_parameters_ex(argc, &a_arg, &b_arg, &round_arg) == FAILURE){ @@ -618,13 +619,13 @@ switch(round) { case GMP_ROUND_ZERO: - gmp_zval_binary_ui_op_ex(return_value, a_arg, b_arg, mpz_tdiv_r, (gmp_binary_ui_op_t)mpz_tdiv_r_ui,1); + gmp_zval_binary_ui_op_ex(return_value, a_arg, b_arg, mpz_tdiv_r, (gmp_binary_ui_op_t)mpz_tdiv_r_ui,1 TSRMLS_CC); break; case GMP_ROUND_PLUSINF: - gmp_zval_binary_ui_op_ex(return_value, a_arg, b_arg, mpz_cdiv_r, (gmp_binary_ui_op_t)mpz_cdiv_r_ui,1); + gmp_zval_binary_ui_op_ex(return_value, a_arg, b_arg, mpz_cdiv_r, (gmp_binary_ui_op_t)mpz_cdiv_r_ui,1 TSRMLS_CC); break; case GMP_ROUND_MINUSINF: - gmp_zval_binary_ui_op_ex(return_value, a_arg, b_arg, mpz_fdiv_r, (gmp_binary_ui_op_t)mpz_fdiv_r_ui,1); + gmp_zval_binary_ui_op_ex(return_value, a_arg, b_arg, mpz_fdiv_r, (gmp_binary_ui_op_t)mpz_fdiv_r_ui,1 TSRMLS_CC); break; } } @@ -635,7 +636,7 @@ ZEND_FUNCTION(gmp_div_q) { zval **a_arg, **b_arg, **round_arg; - int round, argc; + int round=GMP_ROUND_ZERO, argc; argc = ZEND_NUM_ARGS(); if (argc < 2 || argc > 3 || zend_get_parameters_ex(argc, &a_arg, &b_arg, &round_arg) == FAILURE){ @@ -677,7 +678,7 @@ WRONG_PARAM_COUNT; } - gmp_zval_binary_ui_op_ex(return_value,a_arg,b_arg,mpz_mod,(gmp_binary_ui_op_t)mpz_mod_ui,1); + gmp_zval_binary_ui_op_ex(return_value,a_arg,b_arg,mpz_mod,(gmp_binary_ui_op_t)mpz_mod_ui,1 TSRMLS_CC); } /* }}} */ @@ -839,7 +840,7 @@ { zval **gmpnumber_arg, **reps_arg; mpz_t *gmpnum_a; - int argc, reps; + int argc, reps=10; argc = ZEND_NUM_ARGS(); if (argc < 1 || argc > 2 || zend_get_parameters_ex(argc, &gmpnumber_arg, &reps_arg) == FAILURE){ @@ -872,7 +873,7 @@ WRONG_PARAM_COUNT; } - gmp_zval_binary_ui_op_ex(return_value,a_arg,b_arg,mpz_gcd,(gmp_binary_ui_op_t)mpz_gcd_ui,1); + gmp_zval_binary_ui_op_ex(return_value,a_arg,b_arg,mpz_gcd,(gmp_binary_ui_op_t)mpz_gcd_ui,1 TSRMLS_CC); } /* }}} */ @@ -1082,7 +1083,7 @@ ZEND_FUNCTION(gmp_setbit) { zval **a_arg, **ind_arg, **sc_arg; - int argc, index, set; + int argc, index, set=1; mpz_t *gmpnum_a; argc = ZEND_NUM_ARGS();

« previous php.cvs (#6631) next »