From: Nikita Popov Date: Sat, 19 Jul 2014 21:44:33 +0000 (+0200) Subject: Throw \self etc error X-Git-Tag: POST_AST_MERGE^2~111 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=028c7d20fbe090d8c19b708c16e43b5fcc49fd58;p=php Throw \self etc error Could only enable this now that everything uses the new format --- diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index ccbccffb9b..94b3deef29 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -4437,9 +4437,9 @@ static zend_bool zend_is_const_default_class_ref(zend_ast *name_ast) { } /* Fully qualified names are always default refs */ - /*if (!name_ast->attr) { + if (!name_ast->attr) { return 1; - }*/ + } name = zend_ast_get_zval(name_ast); fetch_type = zend_get_class_fetch_type(Z_STRVAL_P(name), Z_STRLEN_P(name)); diff --git a/Zend/zend_language_parser.y b/Zend/zend_language_parser.y index fad4643963..ae3edf3c08 100644 --- a/Zend/zend_language_parser.y +++ b/Zend/zend_language_parser.y @@ -936,7 +936,7 @@ function_call: class_name: T_STATIC { zval zv; ZVAL_STRINGL(&zv, "static", sizeof("static")-1); - $$.u.ast = zend_ast_create_zval(&zv); } + $$.u.ast = zend_ast_create_zval_ex(&zv, 1); } | name { $$.u.ast = $1.u.ast; } ;