Commit 05a400123a4 for php.net
commit 05a400123a4bdcae69dca226eaa123601f77a0e2
Author: Tim Düsterhus <tim@bastelstu.be>
Date: Sun Apr 5 23:46:58 2026 +0200
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.
diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS
index 2b8484011e3..8eb380b387a 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 58aae4b22b5..97c9eee9ae5 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 47d22564f98..e2807b03d1f 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 57ebf02fe02..25035a69342 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: