Commit 0ab1f9f223d for php.net
commit 0ab1f9f223dda2896c372441f607e89bf3c28349
Author: Tim Düsterhus <tim@tideways-gmbh.com>
Date: Thu Jan 15 19:59:31 2026 +0100
zend_execute: Remove unused `scope` parameter from `zend_check_type()` (#20937)
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index 4e446407268..570aac4a8db 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -1213,8 +1213,7 @@ static zend_always_inline bool zend_check_type_slow(
}
static zend_always_inline bool zend_check_type(
- const zend_type *type, zval *arg, zend_class_entry *scope,
- bool is_return_type, bool is_internal)
+ const zend_type *type, zval *arg, bool is_return_type, bool is_internal)
{
const zend_reference *ref = NULL;
ZEND_ASSERT(ZEND_TYPE_IS_SET(*type));
@@ -1246,7 +1245,7 @@ static zend_always_inline bool zend_verify_recv_arg_type(const zend_function *zf
cur_arg_info = &zf->common.arg_info[arg_num-1];
if (ZEND_TYPE_IS_SET(cur_arg_info->type)
- && UNEXPECTED(!zend_check_type(&cur_arg_info->type, arg, zf->common.scope, false, false))) {
+ && UNEXPECTED(!zend_check_type(&cur_arg_info->type, arg, false, false))) {
zend_verify_arg_error(zf, cur_arg_info, arg_num, arg);
return 0;
}
@@ -1258,7 +1257,7 @@ static zend_always_inline bool zend_verify_variadic_arg_type(
const zend_function *zf, const zend_arg_info *arg_info, uint32_t arg_num, zval *arg)
{
ZEND_ASSERT(ZEND_TYPE_IS_SET(arg_info->type));
- if (UNEXPECTED(!zend_check_type(&arg_info->type, arg, zf->common.scope, false, false))) {
+ if (UNEXPECTED(!zend_check_type(&arg_info->type, arg, false, false))) {
zend_verify_arg_error(zf, arg_info, arg_num, arg);
return 0;
}
@@ -1283,7 +1282,7 @@ static zend_never_inline ZEND_ATTRIBUTE_UNUSED bool zend_verify_internal_arg_typ
}
if (ZEND_TYPE_IS_SET(cur_arg_info->type)
- && UNEXPECTED(!zend_check_type(&cur_arg_info->type, arg, fbc->common.scope, false, /* is_internal */ true))) {
+ && UNEXPECTED(!zend_check_type(&cur_arg_info->type, arg, false, /* is_internal */ true))) {
return 0;
}
arg++;
@@ -1489,7 +1488,7 @@ ZEND_API bool zend_verify_internal_return_type(const zend_function *zf, zval *re
return 1;
}
- if (UNEXPECTED(!zend_check_type(&ret_info->type, ret, NULL, true, /* is_internal */ true))) {
+ if (UNEXPECTED(!zend_check_type(&ret_info->type, ret, true, /* is_internal */ true))) {
zend_verify_internal_return_error(zf, ret);
return 0;
}