cvs: Zend / zend_compile.c zend_compile.h zend_globals.h zend_language_parser.y
| From: | Jason Greene | Date: | Sun, 04 Aug 2002 06:39:44 +0000 |
| Subject: | cvs: Zend / zend_compile.c zend_compile.h zend_globals.h zend_language_parser.y | ||
| Groups: | php.zend-engine.cvs | ||
| Request: | Send a blank email to php-zend-engine-cvs+get-297@lists.php.net to get a copy of this message | ||
jason Sun Aug 4 02:39:44 2002 EDT
Modified files:
/Zend zend_compile.c zend_compile.h zend_globals.h
zend_language_parser.y
Log:
Switch to using a parser token instead of a global
Index: Zend/zend_compile.c
diff -u Zend/zend_compile.c:1.233 Zend/zend_compile.c:1.234
--- Zend/zend_compile.c:1.233 Tue Jul 30 15:42:19 2002
+++ Zend/zend_compile.c Sun Aug 4 02:39:44 2002
@@ -2209,7 +2209,6 @@
void zend_do_declare_begin(TSRMLS_D)
{
zend_stack_push(&CG(declare_stack), &CG(declarables), sizeof(zend_declarables));
- CG(declarables).beginop = get_next_op_number(CG(active_op_array));
}
@@ -2247,13 +2246,13 @@
}
-void zend_do_declare_end(TSRMLS_D)
+void zend_do_declare_end(znode *declare_token TSRMLS_DC)
{
zend_declarables *declarables;
zend_stack_top(&CG(declare_stack), (void **) &declarables);
/* We should restore if there was more than (current - start) - (ticks?1:0) opcodes */
- if ((get_next_op_number(CG(active_op_array)) - CG(declarables).beginop) -
((CG(declarables).ticks.value.lval)?1:0)) {
+ if ((get_next_op_number(CG(active_op_array)) - declare_token->u.opline_num) -
((CG(declarables).ticks.value.lval)?1:0)) {
CG(declarables) = *declarables;
}
}
Index: Zend/zend_compile.h
diff -u Zend/zend_compile.h:1.143 Zend/zend_compile.h:1.144
--- Zend/zend_compile.h:1.143 Sun May 19 21:23:36 2002
+++ Zend/zend_compile.h Sun Aug 4 02:39:44 2002
@@ -331,7 +331,7 @@
void zend_do_declare_begin(TSRMLS_D);
void zend_do_declare_stmt(znode *var, znode *val TSRMLS_DC);
-void zend_do_declare_end(TSRMLS_D);
+void zend_do_declare_end(znode *declare_token TSRMLS_DC);
void zend_do_end_heredoc(TSRMLS_D);
Index: Zend/zend_globals.h
diff -u Zend/zend_globals.h:1.87 Zend/zend_globals.h:1.88
--- Zend/zend_globals.h:1.87 Tue Jul 30 15:42:20 2002
+++ Zend/zend_globals.h Sun Aug 4 02:39:44 2002
@@ -61,7 +61,6 @@
typedef struct _zend_declarables {
zval ticks;
- zend_uint beginop;
} zend_declarables;
Index: Zend/zend_language_parser.y
diff -u Zend/zend_language_parser.y:1.22 Zend/zend_language_parser.y:1.23
--- Zend/zend_language_parser.y:1.22 Sat Jun 29 11:43:21 2002
+++ Zend/zend_language_parser.y Sun Aug 4 02:39:44 2002
@@ -201,7 +201,7 @@
| T_UNSET '(' unset_variables ')' ';'
| T_FOREACH '(' w_cvar T_AS { zend_do_foreach_begin(&$1, &$3, &$2, &$4,
1 TSRMLS_CC); } w_cvar foreach_optional_arg ')' { zend_do_foreach_cont(&$6, &$7,
&$4 TSRMLS_CC); } foreach_statement { zend_do_foreach_end(&$1, &$2 TSRMLS_CC); }
| T_FOREACH '(' expr_without_variable T_AS { zend_do_foreach_begin(&$1, &$3,
&$2, &$4, 0 TSRMLS_CC); } w_cvar foreach_optional_arg ')' {
zend_do_foreach_cont(&$6, &$7, &$4 TSRMLS_CC); } foreach_statement {
zend_do_foreach_end(&$1, &$2 TSRMLS_CC); }
- | T_DECLARE { zend_do_declare_begin(TSRMLS_C); } '(' declare_list ')'
declare_statement { zend_do_declare_end(TSRMLS_C); }
+ | T_DECLARE { $1.u.opline_num = get_next_op_number(CG(active_op_array));
zend_do_declare_begin(TSRMLS_C); } '(' declare_list ')' declare_statement
{zend_do_declare_end(&$1 TSRMLS_CC); }
| ';' /* empty statement */
;