diff options
author | Andi Gutmans <andi@php.net> | 2000-03-10 15:01:21 +0000 |
---|---|---|
committer | Andi Gutmans <andi@php.net> | 2000-03-10 15:01:21 +0000 |
commit | d609112c0eedd4094a1e8e01ba9ed0a348975aa4 (patch) | |
tree | f69019ad487e9b7c4f570203f80e6eec30ba2635 /Zend | |
parent | cf89b8db5a264d1179edb9e876ebc32f80c5ee2b (diff) | |
download | php-git-d609112c0eedd4094a1e8e01ba9ed0a348975aa4.tar.gz |
- Nuke import, add include_once and include_require scanner/parser rules.
Hope to nuke use too :)
Diffstat (limited to 'Zend')
-rw-r--r-- | Zend/zend-parser.y | 6 | ||||
-rw-r--r-- | Zend/zend-scanner.l | 8 |
2 files changed, 10 insertions, 4 deletions
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; } -<ST_IN_SCRIPTING>"import" { - return T_IMPORT; +<ST_IN_SCRIPTING>"include_once" { + return T_INCLUDE_ONCE; } <ST_IN_SCRIPTING>"require" { return T_REQUIRE; } +<ST_IN_SCRIPTING>"require_once" { + return T_REQUIRE_ONCE; +} + <ST_IN_SCRIPTING>"use" { return T_USE; } |