]> granicus.if.org Git - php/commitdiff
Handle class const doc comment
authorNikita Popov <nikic@php.net>
Sat, 19 Jul 2014 13:18:06 +0000 (15:18 +0200)
committerNikita Popov <nikic@php.net>
Sat, 19 Jul 2014 13:20:35 +0000 (15:20 +0200)
Property doc comments not yet handled

Zend/zend_compile.c
Zend/zend_language_parser.y

index 66eb47010061746c5abf0145d6e48fc91d530829..d19e377d681576f98fb2187f5a5428283e1be509 100644 (file)
@@ -6545,8 +6545,6 @@ void zend_compile_class_const_decl(zend_ast *ast TSRMLS_DC) {
                        zend_error_noreturn(E_COMPILE_ERROR, "Cannot redefine class constant %s::%s",
                                ce->name->val, name);
                }
-
-               // TODO.AST doc comment
        }
 }
 
index e2018e517ada9e1824780a152832aa4f3c17159b..73809490842ccd2ed8a95ff9e2338b8f76b71098 100644 (file)
@@ -628,7 +628,10 @@ class_statement_list:
 class_statement:
                variable_modifiers property_list ';'
                        { $$.u.ast = $2.u.ast; $$.u.ast->attr = Z_LVAL($1.u.constant); AS($$); }
-       |       class_const_list ';' { $$.u.ast = $1.u.ast; AS($$); }
+       |       class_const_list ';'
+                       { $$.u.ast = $1.u.ast;
+                         if (CG(doc_comment)) { STR_RELEASE(CG(doc_comment)); CG(doc_comment) = NULL; }
+                         AS($$); }
        |       trait_use_statement
        |       method_modifiers function returns_ref T_STRING '(' parameter_list ')' method_body
                        { $$.u.ast = zend_ast_create_func_decl(ZEND_AST_METHOD, $3.EA | Z_LVAL($1.u.constant),