com php-src: Fix merge: Zend/zend_ast.c Zend/zend_compi le.c

From: Date: Sat, 16 Aug 2014 20:08:02 +0000
Subject: com php-src: Fix merge: Zend/zend_ast.c Zend/zend_compi le.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-80854@lists.php.net to get a copy of this message
Commit: 38a173916c6bd4f38eee02336e3f7e022dca4f16 Author: Nikita Popov <nikic@php.net> Sat, 16 Aug 2014 22:08:02 +0200 Parents: 71675a4bf830d7b9400663275fe48275480d34f4 Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=38a173916c6bd4f38eee02336e3f7e022dca4f16 Log: Fix merge Changed paths: M Zend/zend_ast.c M Zend/zend_compile.c Diff: diff --git a/Zend/zend_ast.c b/Zend/zend_ast.c index 8e1d970..d6995ef 100644 --- a/Zend/zend_ast.c +++ b/Zend/zend_ast.c @@ -314,7 +314,7 @@ ZEND_API void zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *s } } break; - case ZEND_FETCH_DIM_R: + case ZEND_AST_DIM: zend_ast_evaluate(&op1, ast->child[0], scope TSRMLS_CC); zend_ast_evaluate(&op2, ast->child[1], scope TSRMLS_CC); { diff --git a/Zend/zend_compile.c b/Zend/zend_compile..c index 5e0ed6c..fbacd00 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -613,7 +613,7 @@ void zend_do_free(znode *op1 TSRMLS_DC) /* {{{ */ } } } else if (op1->op_type == IS_CONST) { - zval_dtor(&op1->u.constant); + zval_ptr_dtor(&op1->u.constant); } } /* }}} */ @@ -5738,12 +5738,6 @@ void zend_compile_class_const_decl(zend_ast *ast TSRMLS_DC) { zend_const_expr_to_zval(&value_zv, value_ast TSRMLS_CC); - if (Z_TYPE(value_zv) == IS_ARRAY - || (Z_TYPE(value_zv) == IS_CONSTANT_AST && Z_ASTVAL(value_zv)->kind == ZEND_AST_ARRAY) - ) { - zend_error_noreturn(E_COMPILE_ERROR, "Arrays are not allowed in class constants"); - } - name = zend_new_interned_string_safe(name TSRMLS_CC); if (zend_hash_add(&ce->constants_table, name, &value_zv) == NULL) { zend_error_noreturn(E_COMPILE_ERROR, "Cannot redefine class constant %s::%s", @@ -6244,13 +6238,6 @@ void zend_compile_const_decl(zend_ast *ast TSRMLS_DC) { value_node.op_type = IS_CONST; zend_const_expr_to_zval(value_zv, value_ast TSRMLS_CC); - if (Z_TYPE_P(value_zv) == IS_ARRAY - || (Z_TYPE_P(value_zv) == IS_CONSTANT_AST - && Z_ASTVAL_P(value_zv)->kind == ZEND_AST_ARRAY) - ) { - zend_error_noreturn(E_COMPILE_ERROR, "Arrays are not allowed as constants"); - } - if (zend_get_ct_const(name, 0 TSRMLS_CC)) { zend_error_noreturn(E_COMPILE_ERROR, "Cannot redeclare constant '%s'", name->val); } @@ -7156,7 +7143,7 @@ zend_bool zend_is_allowed_in_const_expr(zend_ast_kind kind) { || kind == ZEND_AST_AND || kind == ZEND_AST_OR || kind == ZEND_AST_UNARY_OP || kind == ZEND_AST_UNARY_PLUS || kind == ZEND_AST_UNARY_MINUS - || kind == ZEND_AST_CONDITIONAL + || kind == ZEND_AST_CONDITIONAL || kind == ZEND_AST_DIM || kind == ZEND_AST_ARRAY || kind == ZEND_AST_ARRAY_ELEM || kind == ZEND_AST_CONST || kind == ZEND_AST_CLASS_CONST || kind == ZEND_AST_RESOLVE_CLASS_NAME || kind == ZEND_AST_MAGIC_CONST;

« previous php.cvs (#80854) next »