From: Andi Gutmans Date: Fri, 10 Mar 2000 15:01:21 +0000 (+0000) Subject: - Nuke import, add include_once and include_require scanner/parser rules. X-Git-Tag: PHP-4.0-RC1~202 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d609112c0eedd4094a1e8e01ba9ed0a348975aa4;p=php - Nuke import, add include_once and include_require scanner/parser rules. Hope to nuke use too :) --- diff --git a/Zend/zend-parser.y b/Zend/zend-parser.y index fb482d75b9..511caac30b 100644 --- a/Zend/zend-parser.y +++ b/Zend/zend-parser.y @@ -49,7 +49,7 @@ %pure_parser %expect 7 -%left T_INCLUDE T_EVAL T_IMPORT +%left T_INCLUDE T_INCLUDE_ONCE T_EVAL %left ',' %left T_LOGICAL_OR %left T_LOGICAL_XOR @@ -108,6 +108,7 @@ %token T_CONST %token T_RETURN %token T_REQUIRE +%token T_REQUIRE_ONCE %token T_USE %token T_GLOBAL %token T_STATIC @@ -200,6 +201,7 @@ unticked_statement: | T_INLINE_HTML { do_echo(&$1 CLS_CC); } | expr ';' { do_free(&$1 CLS_CC); } | T_REQUIRE expr ';' { do_require(&$2 CLS_CC); } + | T_REQUIRE_ONCE use_filename ';' { do_require(&$2 CLS_CC); } | T_USE use_filename ';' { use_filename($2.u.constant.value.str.val, $2.u.constant.value.str.len CLS_CC); zval_dtor(&$2.u.constant); } | T_UNSET '(' cvar ')' ';' { do_end_variable_parse(BP_VAR_UNSET, 0 CLS_CC); do_unset(&$3 CLS_CC); } | T_FOREACH '(' expr T_AS { do_foreach_begin(&$1, &$3, &$2, &$4 CLS_CC); } w_cvar foreach_optional_arg ')' { do_foreach_cont(&$6, &$7, &$4 CLS_CC); } foreach_statement { do_foreach_end(&$1, &$2 CLS_CC); } @@ -708,8 +710,8 @@ internal_functions_in_yacc: T_ISSET '(' cvar ')' { do_isset_or_isempty(ZEND_ISSET, &$$, &$3 CLS_CC); } | T_EMPTY '(' cvar ')' { do_isset_or_isempty(ZEND_ISEMPTY, &$$, &$3 CLS_CC); } | T_INCLUDE expr { do_include_or_eval(ZEND_INCLUDE, &$$, &$2 CLS_CC); } + | T_INCLUDE_ONCE expr { do_include_or_eval(ZEND_INCLUDE, &$$, &$2 CLS_CC); } | T_EVAL '(' expr ')' { do_include_or_eval(ZEND_EVAL, &$$, &$3 CLS_CC); } - | T_IMPORT '(' expr ')' { do_include_or_eval(ZEND_IMPORT, &$$, &$3 CLS_CC); } ; diff --git a/Zend/zend-scanner.l b/Zend/zend-scanner.l index 869fd30093..878c33a4df 100644 --- a/Zend/zend-scanner.l +++ b/Zend/zend-scanner.l @@ -918,14 +918,18 @@ ESCAPED_AND_WHITESPACE [\n\t\r #'.:;,()|^&+-/*=%!~<>?@]+ return T_INCLUDE; } -"import" { - return T_IMPORT; +"include_once" { + return T_INCLUDE_ONCE; } "require" { return T_REQUIRE; } +"require_once" { + return T_REQUIRE_ONCE; +} + "use" { return T_USE; }