From 144ba8bed3f6074239bd069af9bd752fdd462557 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20D=C3=BCsterhus?= Date: Sun, 5 Apr 2026 22:59:05 +0200 Subject: [PATCH 1/3] zend_ast: Remove unused `ZEND_AST_PARENT_PROPERTY_HOOK_CALL` (#21644) --- UPGRADING.INTERNALS | 1 + Zend/zend_ast.c | 6 ------ Zend/zend_ast.h | 1 - Zend/zend_compile.c | 4 ---- 4 files changed, 1 insertion(+), 11 deletions(-) diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS index 1072d822ee492..2b8484011e329 100644 --- a/UPGRADING.INTERNALS +++ b/UPGRADING.INTERNALS @@ -83,6 +83,7 @@ PHP 8.6 INTERNALS UPGRADE NOTES . The INI_ORIG_{INT|STR|FLT|BOOL}() macros have been removed as they are unused. If this behaviour is required fall back to the zend_ini_* functions. + . The unused ZEND_AST_PARENT_PROPERTY_HOOK_CALL has been removed. ======================== 2. Build system changes diff --git a/Zend/zend_ast.c b/Zend/zend_ast.c index e6270262e4524..58aae4b22b587 100644 --- a/Zend/zend_ast.c +++ b/Zend/zend_ast.c @@ -2555,12 +2555,6 @@ static ZEND_COLD void zend_ast_export_ex(smart_str *str, zend_ast *ast, int prio smart_str_appendc(str, ')'); break; } - case ZEND_AST_PARENT_PROPERTY_HOOK_CALL: - smart_str_append(str, Z_STR_P(zend_ast_get_zval(ast->child[0]))); - smart_str_appendc(str, '('); - zend_ast_export_ex(str, ast->child[1], 0, indent); - smart_str_appendc(str, ')'); - break; case ZEND_AST_CALLABLE_CONVERT: { zend_ast_fcc *fcc_ast = (zend_ast_fcc*)ast; ast = fcc_ast->args; diff --git a/Zend/zend_ast.h b/Zend/zend_ast.h index a88efefd85b20..47d22564f9802 100644 --- a/Zend/zend_ast.h +++ b/Zend/zend_ast.h @@ -153,7 +153,6 @@ enum _zend_ast_kind { ZEND_AST_MATCH, ZEND_AST_MATCH_ARM, ZEND_AST_NAMED_ARG, - ZEND_AST_PARENT_PROPERTY_HOOK_CALL, ZEND_AST_PIPE, /* 3 child nodes */ diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 6734db09a2e9d..b88d5b9d98769 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -12135,7 +12135,6 @@ static void zend_compile_expr_inner(znode *result, zend_ast *ast) /* {{{ */ case ZEND_AST_METHOD_CALL: case ZEND_AST_NULLSAFE_METHOD_CALL: case ZEND_AST_STATIC_CALL: - case ZEND_AST_PARENT_PROPERTY_HOOK_CALL: case ZEND_AST_PIPE: zend_compile_var(result, ast, BP_VAR_R, false); return; @@ -12292,9 +12291,6 @@ static zend_op *zend_compile_var_inner(znode *result, zend_ast *ast, uint32_t ty case ZEND_AST_CALL: zend_compile_call(result, ast, type); return NULL; - case ZEND_AST_PARENT_PROPERTY_HOOK_CALL: - zend_compile_parent_property_hook_call(result, ast, type); - return NULL; case ZEND_AST_METHOD_CALL: case ZEND_AST_NULLSAFE_METHOD_CALL: zend_compile_method_call(result, ast, type); From 05a400123a4bdcae69dca226eaa123601f77a0e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20D=C3=BCsterhus?= Date: Sun, 5 Apr 2026 23:46:58 +0200 Subject: [PATCH 2/3] zend_ast: Rename `ZEND_AST_METHOD_REFERENCE` to `ZEND_AST_TRAIT_METHOD_REFERENCE` (#21645) This AST node is specific to traits and thus should include `TRAIT` in its name. --- UPGRADING.INTERNALS | 2 ++ Zend/zend_ast.c | 2 +- Zend/zend_ast.h | 2 +- Zend/zend_language_parser.y | 4 ++-- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS index 2b8484011e329..8eb380b387a46 100644 --- a/UPGRADING.INTERNALS +++ b/UPGRADING.INTERNALS @@ -84,6 +84,8 @@ PHP 8.6 INTERNALS UPGRADE NOTES unused. If this behaviour is required fall back to the zend_ini_* functions. . The unused ZEND_AST_PARENT_PROPERTY_HOOK_CALL has been removed. + . ZEND_AST_METHOD_REFERENCE has been renamed to + ZEND_AST_TRAIT_METHOD_REFERENCE. ======================== 2. Build system changes diff --git a/Zend/zend_ast.c b/Zend/zend_ast.c index 58aae4b22b587..97c9eee9ae588 100644 --- a/Zend/zend_ast.c +++ b/Zend/zend_ast.c @@ -2803,7 +2803,7 @@ static ZEND_COLD void zend_ast_export_ex(smart_str *str, zend_ast *ast, int prio smart_str_appends(str, " insteadof "); zend_ast_export_ex(str, ast->child[1], 0, indent); break; - case ZEND_AST_METHOD_REFERENCE: + case ZEND_AST_TRAIT_METHOD_REFERENCE: if (ast->child[0]) { zend_ast_export_name(str, ast->child[0], 0, indent); smart_str_appends(str, "::"); diff --git a/Zend/zend_ast.h b/Zend/zend_ast.h index 47d22564f9802..e2807b03d1f53 100644 --- a/Zend/zend_ast.h +++ b/Zend/zend_ast.h @@ -144,7 +144,7 @@ enum _zend_ast_kind { ZEND_AST_DECLARE, ZEND_AST_USE_TRAIT, ZEND_AST_TRAIT_PRECEDENCE, - ZEND_AST_METHOD_REFERENCE, + ZEND_AST_TRAIT_METHOD_REFERENCE, ZEND_AST_NAMESPACE, ZEND_AST_USE_ELEM, ZEND_AST_TRAIT_ALIAS, diff --git a/Zend/zend_language_parser.y b/Zend/zend_language_parser.y index 57ebf02fe024e..25035a693426c 100644 --- a/Zend/zend_language_parser.y +++ b/Zend/zend_language_parser.y @@ -1059,13 +1059,13 @@ trait_alias: trait_method_reference: identifier - { $$ = zend_ast_create(ZEND_AST_METHOD_REFERENCE, NULL, $1); } + { $$ = zend_ast_create(ZEND_AST_TRAIT_METHOD_REFERENCE, NULL, $1); } | absolute_trait_method_reference { $$ = $1; } ; absolute_trait_method_reference: class_name T_PAAMAYIM_NEKUDOTAYIM identifier - { $$ = zend_ast_create(ZEND_AST_METHOD_REFERENCE, $1, $3); } + { $$ = zend_ast_create(ZEND_AST_TRAIT_METHOD_REFERENCE, $1, $3); } ; method_body: From f6ddc37e21799506efee19ae27daf46cf79236e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20D=C3=BCsterhus?= Date: Mon, 6 Apr 2026 00:10:15 +0200 Subject: [PATCH 3/3] Update GitHub Actions to `codecov/codecov-action@v6` This fixes: > Warning: Node.js 20 actions are deprecated. The following actions are running > on Node.js 20 and may not work as expected: > actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea. --- .github/workflows/test-suite.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-suite.yml b/.github/workflows/test-suite.yml index 9eeff1455f8f9..cf0ad1df647ae 100644 --- a/.github/workflows/test-suite.yml +++ b/.github/workflows/test-suite.yml @@ -413,7 +413,7 @@ jobs: with: enableOpcache: true jitType: tracing - - uses: codecov/codecov-action@v5 + - uses: codecov/codecov-action@v6 if: ${{ !cancelled() }} with: fail_ci_if_error: true