Merge branch 'PHP-7.0'

* PHP-7.0:
  Correct intdiv() argument names and description
This commit is contained in:
Dmitry Stogov 2015-10-09 00:42:26 +03:00
commit 6571038093
2 changed files with 7 additions and 7 deletions

View file

@ -1763,7 +1763,7 @@ ZEND_BEGIN_ARG_INFO(arginfo_fmod, 0)
ZEND_END_ARG_INFO() ZEND_END_ARG_INFO()
ZEND_BEGIN_ARG_INFO(arginfo_intdiv, 0) ZEND_BEGIN_ARG_INFO(arginfo_intdiv, 0)
ZEND_ARG_INFO(0, numerator) ZEND_ARG_INFO(0, dividend)
ZEND_ARG_INFO(0, divisor) ZEND_ARG_INFO(0, divisor)
ZEND_END_ARG_INFO() ZEND_END_ARG_INFO()
/* }}} */ /* }}} */

View file

@ -1456,27 +1456,27 @@ PHP_FUNCTION(fmod)
} }
/* }}} */ /* }}} */
/* {{{ proto int intdiv(int numerator, int divisor) /* {{{ proto int intdiv(int dividend, int divisor)
Returns the integer division of the numerator by the divisor */ Returns the integer quotient of the division of dividend by divisor */
PHP_FUNCTION(intdiv) PHP_FUNCTION(intdiv)
{ {
zend_long numerator, divisor; zend_long dividend, divisor;
if (zend_parse_parameters(ZEND_NUM_ARGS(), "ll", &numerator, &divisor) == FAILURE) { if (zend_parse_parameters(ZEND_NUM_ARGS(), "ll", &dividend, &divisor) == FAILURE) {
return; return;
} }
if (divisor == 0) { if (divisor == 0) {
zend_throw_exception_ex(zend_ce_division_by_zero_error, 0, "Division by zero"); zend_throw_exception_ex(zend_ce_division_by_zero_error, 0, "Division by zero");
return; return;
} else if (divisor == -1 && numerator == ZEND_LONG_MIN) { } else if (divisor == -1 && dividend == ZEND_LONG_MIN) {
/* Prevent overflow error/crash ... really should not happen: /* Prevent overflow error/crash ... really should not happen:
We don't return a float here as that violates function contract */ We don't return a float here as that violates function contract */
zend_throw_exception_ex(zend_ce_arithmetic_error, 0, "Division of PHP_INT_MIN by -1 is not an integer"); zend_throw_exception_ex(zend_ce_arithmetic_error, 0, "Division of PHP_INT_MIN by -1 is not an integer");
return; return;
} }
RETURN_LONG(numerator / divisor); RETURN_LONG(dividend / divisor);
} }
/* }}} */ /* }}} */