@@ -194,7 +194,6 @@ static void gmp_cmp(zval *return_value, zval *a_arg, zval *b_arg, bool is_operat
194
194
* include parameter parsing.
195
195
*/
196
196
typedef void (* gmp_unary_op_t )(mpz_ptr , mpz_srcptr );
197
- typedef mp_bitcnt_t (* gmp_unary_opl_t )(mpz_srcptr );
198
197
199
198
typedef void (* gmp_unary_ui_op_t )(mpz_ptr , gmp_ulong );
200
199
@@ -241,7 +240,6 @@ static void gmp_mpz_gcd_ui(mpz_ptr a, mpz_srcptr b, gmp_ulong c) {
241
240
242
241
/* Unary operations */
243
242
#define gmp_unary_op (op ) _gmp_unary_op(INTERNAL_FUNCTION_PARAM_PASSTHRU, op)
244
- #define gmp_unary_opl (op ) _gmp_unary_opl(INTERNAL_FUNCTION_PARAM_PASSTHRU, op)
245
243
246
244
static void gmp_free_object_storage (zend_object * obj ) /* {{{ */
247
245
{
@@ -928,23 +926,6 @@ static inline void _gmp_unary_op(INTERNAL_FUNCTION_PARAMETERS, gmp_unary_op_t gm
928
926
}
929
927
/* }}} */
930
928
931
- /* {{{ _gmp_unary_opl */
932
- static inline void _gmp_unary_opl (INTERNAL_FUNCTION_PARAMETERS , gmp_unary_opl_t gmp_op )
933
- {
934
- zval * a_arg ;
935
- mpz_ptr gmpnum_a ;
936
- gmp_temp_t temp_a ;
937
-
938
- ZEND_PARSE_PARAMETERS_START (1 , 1 )
939
- Z_PARAM_ZVAL (a_arg )
940
- ZEND_PARSE_PARAMETERS_END ();
941
-
942
- FETCH_GMP_ZVAL (gmpnum_a , a_arg , temp_a , 1 );
943
- RETVAL_LONG (gmp_op (gmpnum_a ));
944
- FREE_GMP_TEMP (temp_a );
945
- }
946
- /* }}} */
947
-
948
929
static bool gmp_verify_base (zend_long base , uint32_t arg_num )
949
930
{
950
931
if (base && (base < 2 || base > GMP_MAX_BASE )) {
@@ -1841,7 +1822,6 @@ ZEND_FUNCTION(gmp_cmp)
1841
1822
/* {{{ Gets the sign of the number */
1842
1823
ZEND_FUNCTION (gmp_sign )
1843
1824
{
1844
- /* Can't use gmp_unary_opl here, because mpz_sgn is a macro */
1845
1825
zval * a_arg ;
1846
1826
mpz_ptr gmpnum_a ;
1847
1827
gmp_temp_t temp_a ;
@@ -2110,7 +2090,17 @@ ZEND_FUNCTION(gmp_testbit)
2110
2090
/* {{{ Calculates the population count of a */
2111
2091
ZEND_FUNCTION (gmp_popcount )
2112
2092
{
2113
- gmp_unary_opl (mpz_popcount );
2093
+ zval * a_arg ;
2094
+ mpz_ptr gmpnum_a ;
2095
+ gmp_temp_t temp_a ;
2096
+
2097
+ ZEND_PARSE_PARAMETERS_START (1 , 1 )
2098
+ Z_PARAM_ZVAL (a_arg )
2099
+ ZEND_PARSE_PARAMETERS_END ();
2100
+
2101
+ FETCH_GMP_ZVAL (gmpnum_a , a_arg , temp_a , 1 );
2102
+ RETVAL_LONG (mpz_popcount (gmpnum_a ));
2103
+ FREE_GMP_TEMP (temp_a );
2114
2104
}
2115
2105
/* }}} */
2116
2106
0 commit comments