]> granicus.if.org Git - php/commitdiff
Revert portions of the doc comment patch. There should be no parser
authorAndrei Zmievski <andrei@php.net>
Wed, 2 Apr 2003 16:13:12 +0000 (16:13 +0000)
committerAndrei Zmievski <andrei@php.net>
Wed, 2 Apr 2003 16:13:12 +0000 (16:13 +0000)
errors now.

Zend/zend_compile.c
Zend/zend_compile.h
Zend/zend_highlight.c
Zend/zend_language_parser.y
Zend/zend_language_scanner.l

index 8e0e229607c75247606c58ba81bbce318e38d49a..4f19fab0e01ca1c590e1524cbc104098ef253d6c 100644 (file)
@@ -1071,16 +1071,18 @@ void zend_do_begin_function_declaration(znode *function_token, znode *function_n
 }
 
 
-void zend_do_end_function_declaration(znode *function_token, znode *doc_comment TSRMLS_DC)
+void zend_do_end_function_declaration(znode *function_token TSRMLS_DC)
 {
        zend_do_extended_info(TSRMLS_C);
        zend_do_return(NULL, 0 TSRMLS_CC);
        pass_two(CG(active_op_array) TSRMLS_CC);
        CG(active_op_array)->line_end = zend_get_compiled_lineno(TSRMLS_C);
+#if 0
        if (doc_comment && doc_comment->op_type != IS_UNUSED) {
                CG(active_op_array)->doc_comment = doc_comment->u.constant.value.str.val;
                CG(active_op_array)->doc_comment_len = doc_comment->u.constant.value.str.len;
        }
+#endif
        CG(active_op_array) = function_token->u.op_array;
 
        /* Pop the switch and foreach seperators */
@@ -2251,16 +2253,18 @@ static void do_verify_abstract_class(TSRMLS_D)
 }
 
 
-void zend_do_end_class_declaration(znode *class_token, znode *parent_token, znode *doc_comment TSRMLS_DC)
+void zend_do_end_class_declaration(znode *class_token, znode *parent_token TSRMLS_DC)
 {
        do_inherit_parent_constructor(CG(active_class_entry));
 
        CG(active_class_entry)->line_end = zend_get_compiled_lineno(TSRMLS_C);
 
+#if 0
        if (doc_comment && doc_comment->op_type != IS_UNUSED) {
                CG(active_class_entry)->doc_comment = doc_comment->u.constant.value.str.val;
                CG(active_class_entry)->doc_comment_len = doc_comment->u.constant.value.str.len;
        }
+#endif
 
        if (CG(active_class_entry)->num_interfaces > 0) {
                CG(active_class_entry)->interfaces = (zend_class_entry **) emalloc(sizeof(zend_class_entry *)*CG(active_class_entry)->num_interfaces);
@@ -3292,6 +3296,7 @@ int zendlex(znode *zendlval TSRMLS_DC)
        retval = lex_scan(&zendlval->u.constant TSRMLS_CC);
        switch (retval) {
                case T_COMMENT:
+               case T_DOC_COMMENT:
                case T_OPEN_TAG:
                case T_WHITESPACE:
                        retval = zendlex(zendlval TSRMLS_CC);
@@ -3403,7 +3408,7 @@ void zend_do_begin_namespace(znode *ns_token, znode *ns_name TSRMLS_DC)
        CG(function_table) = &ns->function_table;
 }
 
-void zend_do_end_namespace(znode *ns_token, znode *doc_comment TSRMLS_DC)
+void zend_do_end_namespace(znode *ns_token TSRMLS_DC)
 {
        zend_namespace *ns = ns_token->u.previously_active_namespace;
        zend_op *opline;
@@ -3418,6 +3423,7 @@ void zend_do_end_namespace(znode *ns_token, znode *doc_comment TSRMLS_DC)
                CG(active_namespace)->line_end = zend_get_compiled_lineno(TSRMLS_C);
        }
 
+#if 0
        if (doc_comment && doc_comment->op_type != IS_UNUSED) {
                /*
                 * Do not overwrite previously declared doc comment in case the namespace is
@@ -3430,6 +3436,7 @@ void zend_do_end_namespace(znode *ns_token, znode *doc_comment TSRMLS_DC)
                        zval_dtor(&doc_comment->u.constant);
                }
        }
+#endif
 
        opline = get_next_op(CG(active_op_array) TSRMLS_CC);
 
index c11d1127097f89086758adf596d3f9574cd3df0e..6879eda18860cd28213db5040521fcc02f072581 100644 (file)
@@ -320,7 +320,7 @@ void zend_do_add_variable(znode *result, znode *op1, znode *op2 TSRMLS_DC);
 
 int zend_do_verify_access_types(znode *current_access_type, znode *new_modifier);
 void zend_do_begin_function_declaration(znode *function_token, znode *function_name, int is_method, int return_reference, znode *fn_flags_znode TSRMLS_DC);
-void zend_do_end_function_declaration(znode *function_token, znode *doc_comment TSRMLS_DC);
+void zend_do_end_function_declaration(znode *function_token TSRMLS_DC);
 void zend_do_receive_arg(zend_uchar op, znode *var, znode *offset, znode *initialization, znode *class_type, zend_uchar pass_type TSRMLS_DC);
 int zend_do_begin_function_call(znode *function_name TSRMLS_DC);
 void zend_do_begin_method_call(znode *left_bracket TSRMLS_DC);
@@ -362,7 +362,7 @@ void zend_do_case_after_statement(znode *result, znode *case_token TSRMLS_DC);
 void zend_do_default_before_statement(znode *case_list, znode *default_token TSRMLS_DC);
 
 void zend_do_begin_class_declaration(znode *class_token, znode *class_name, znode *parent_class_name TSRMLS_DC);
-void zend_do_end_class_declaration(znode *class_token, znode *parent_token, znode *doc_comment TSRMLS_DC);
+void zend_do_end_class_declaration(znode *class_token, znode *parent_token TSRMLS_DC);
 void zend_do_declare_property(znode *var_name, znode *value, zend_uint access_type TSRMLS_DC);
 void zend_do_declare_class_constant(znode *var_name, znode *value TSRMLS_DC);
 
@@ -451,7 +451,7 @@ ZEND_API void destroy_zend_class(zend_class_entry **pce);
 void zend_class_add_ref(zend_class_entry **ce);
 
 void zend_do_begin_namespace(znode *ns_token, znode *ns_name TSRMLS_DC);
-void zend_do_end_namespace(znode *ns_token, znode *doc_comment TSRMLS_DC);
+void zend_do_end_namespace(znode *ns_token TSRMLS_DC);
 void zend_init_namespace(zend_namespace *ns TSRMLS_DC);
 void zend_do_declare_namespace_var(znode *name, znode *value TSRMLS_DC);
 void zend_do_declare_namespace_constant(znode *name, znode *value TSRMLS_DC);
index 5e3d6576858dedcd27f32ab2f3a83c7524ed1b28..586c1ab64d9311d06f8415be7ecda9c398b265fb 100644 (file)
@@ -157,6 +157,7 @@ ZEND_API void zend_highlight(zend_syntax_highlighter_ini *syntax_highlighter_ini
                                case T_CLOSE_TAG:
                                case T_WHITESPACE:
                                case T_COMMENT:
+                               case T_DOC_COMMENT:
                                        break;
                                default:
                                        efree(token.value.str.val);
@@ -198,6 +199,7 @@ ZEND_API void zend_strip(TSRMLS_D)
                                }
                                                /* lack of break; is intentional */
                        case T_COMMENT:
+                       case T_DOC_COMMENT:
                                token.type = 0;
                                continue;
                        
@@ -226,6 +228,7 @@ ZEND_API void zend_strip(TSRMLS_D)
                                case T_CLOSE_TAG:
                                case T_WHITESPACE:
                                case T_COMMENT:
+                               case T_DOC_COMMENT:
                                        break;
 
                                default:
index 361b7ba246bb582332892d3cbc1b341f8493fc3f..147d5fb74e80401f7c014d296f56ad083ce1c1ca 100644 (file)
@@ -180,7 +180,6 @@ inner_statement:
 
 statement:
                unticked_statement { zend_do_ticks(TSRMLS_C); }
-    |   doc_comment { zend_do_free(&$1 TSRMLS_CC); } unticked_statement { zend_do_ticks(TSRMLS_C); }
 ;
 
 unticked_statement:
@@ -286,27 +285,17 @@ is_reference:
 
 
 unticked_function_declaration_statement:
-               optional_doc_comment T_FUNCTION { $2.u.opline_num = CG(zend_lineno); } is_reference T_STRING { zend_do_begin_function_declaration(&$2, &$5, 0, $4.op_type, NULL TSRMLS_CC); }
-                       '(' parameter_list ')' '{' inner_statement_list '}' { zend_do_end_function_declaration(&$2, &$1 TSRMLS_CC); }
+               T_FUNCTION { $1.u.opline_num = CG(zend_lineno); } is_reference T_STRING { zend_do_begin_function_declaration(&$1, &$4, 0, $3.op_type, NULL TSRMLS_CC); }
+                       '(' parameter_list ')' '{' inner_statement_list '}' { zend_do_end_function_declaration(&$1 TSRMLS_CC); }
 ;
 
 unticked_class_declaration_statement:
-               optional_doc_comment class_entry_type T_STRING extends_from
-                       { zend_do_begin_class_declaration(&$2, &$3, &$4 TSRMLS_CC); } 
+               class_entry_type T_STRING extends_from
+                       { zend_do_begin_class_declaration(&$1, &$2, &$3 TSRMLS_CC); } 
                        implements_list
                        '{'
                                class_statement_list
-                       '}' { zend_do_end_class_declaration(&$2, &$4, &$1 TSRMLS_CC); }
-;
-
-optional_doc_comment:
-       /* empty */             { $$.op_type = IS_UNUSED; }
-       |       doc_comment             { $$ = $1; }
-;
-
-
-doc_comment:
-               T_DOC_COMMENT { $$ = $1; }
+                       '}' { zend_do_end_class_declaration(&$1, &$2 TSRMLS_CC); }
 ;
 
 
@@ -317,7 +306,7 @@ class_entry_type:
 ;
 
 namespace_declaration_statement:
-               optional_doc_comment T_NAMESPACE namespace_name '{' { zend_do_begin_namespace(&$2, &$3 TSRMLS_CC); } namespace_statement_list '}' { zend_do_end_namespace(&$2, &$1 TSRMLS_CC); }
+               T_NAMESPACE namespace_name '{' { zend_do_begin_namespace(&$1, &$2 TSRMLS_CC); } namespace_statement_list '}' { zend_do_end_namespace(&$1 TSRMLS_CC); }
 ;
 
 namespace_statement_list:
@@ -515,9 +504,7 @@ class_statement:
                variable_modifiers { CG(access_type) = $1.u.constant.value.lval; } class_variable_declaration ';'
        |       class_constant_declaration ';'
        |       method_modifiers T_FUNCTION { $2.u.opline_num = CG(zend_lineno); } is_reference T_STRING { zend_do_begin_function_declaration(&$2, &$5, 1, $4.op_type, &$1 TSRMLS_CC); } '(' 
-                       parameter_list ')' method_body { zend_do_abstract_method(&$5, &$1, &$10 TSRMLS_CC); zend_do_end_function_declaration(&$2, NULL TSRMLS_CC); }
-       |       doc_comment method_modifiers T_FUNCTION { $3.u.opline_num = CG(zend_lineno); } is_reference T_STRING { zend_do_begin_function_declaration(&$3, &$6, 1, $5.op_type, &$2 TSRMLS_CC); } '(' 
-                       parameter_list ')' method_body { zend_do_abstract_method(&$6, &$2, &$11 TSRMLS_CC); zend_do_end_function_declaration(&$3, &$1 TSRMLS_CC); }
+                       parameter_list ')' method_body { zend_do_abstract_method(&$5, &$1, &$10 TSRMLS_CC); zend_do_end_function_declaration(&$2 TSRMLS_CC); }
 ;
 
 
index 30a6c752f8d253f5309e4e224493f64ac7751ea7..e27bda46d0d32ea8358f22e8282f70d6a1c5dbda 100644 (file)
@@ -1201,9 +1201,6 @@ NAMESPACE_NAME ({LABEL}":")+{LABEL}
 }
 
 <ST_DOC_COMMENT>"*/" {
-       zendlval->value.str.val = (char *)estrndup(yytext, yyleng);
-       zendlval->value.str.len = yyleng;
-       zendlval->type = IS_STRING;
        HANDLE_NEWLINES(yytext, yyleng);
        BEGIN(ST_IN_SCRIPTING);
        return T_DOC_COMMENT;