Commit 0471420514c for php.net

commit 0471420514c1500c2127e357e3c352602af7f076
Author: Tim Düsterhus <tim@bastelstu.be>
Date:   Fri Apr 24 18:45:58 2026 +0200

    zend_API: Remove `_throw()` variants of ZPP (#21866)

diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS
index 10c71d19a56..cfeaf9c30af 100644
--- a/UPGRADING.INTERNALS
+++ b/UPGRADING.INTERNALS
@@ -92,6 +92,10 @@ PHP 8.6 INTERNALS UPGRADE NOTES
     ZEND_ACC2_FORBID_DYN_CALLS (@forbid-dynamic-calls in stubs). In debug
     builds, failing to include that flag will lead to assertion failures.
   . The ZEND_RESULT_CODE type has been removed. Use zend_result directly.
+  . The zend_parse_parameters_none_throw(), zend_parse_parameters_throw(),
+    and ZEND_PARSE_PARAMS_THROW have been removed due to being misleading,
+    since ZPP always throws, unless ZEND_PARSE_PARAMS_QUIET is given. Use
+    the non-throw versions.

 ========================
 2. Build system changes
diff --git a/Zend/zend_API.h b/Zend/zend_API.h
index 9eaa1ec7b3c..7990726f7e6 100644
--- a/Zend/zend_API.h
+++ b/Zend/zend_API.h
@@ -352,18 +352,12 @@ ZEND_API zend_result zend_get_parameters_array_ex(uint32_t param_count, zval *ar
 	zend_get_parameters_array_ex(param_count, argument_array)
 #define zend_parse_parameters_none() \
 	(EXPECTED(ZEND_NUM_ARGS() == 0) ? SUCCESS : (zend_wrong_parameters_none_error(), FAILURE))
-#define zend_parse_parameters_none_throw() \
-	zend_parse_parameters_none()

 /* Parameter parsing API -- andrei */

-#define ZEND_PARSE_PARAMS_THROW 0 /* No longer used, zpp always uses exceptions */
 #define ZEND_PARSE_PARAMS_QUIET (1<<1)
 ZEND_API zend_result zend_parse_parameters(uint32_t num_args, const char *type_spec, ...);
 ZEND_API zend_result zend_parse_parameters_ex(int flags, uint32_t num_args, const char *type_spec, ...);
-/* NOTE: This must have at least one value in __VA_ARGS__ for the expression to be valid */
-#define zend_parse_parameters_throw(num_args, ...) \
-	zend_parse_parameters(num_args, __VA_ARGS__)
 ZEND_API const char *zend_zval_type_name(const zval *arg);
 ZEND_API const char *zend_zval_value_name(const zval *arg);
 ZEND_API zend_string *zend_zval_get_legacy_type(const zval *arg);