From 7c60aeef857f288661a6f95cf3aa45d6a6feff9b Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Sun, 26 Aug 2012 11:37:05 +0800 Subject: [PATCH] Fixed bug #62931 & #62932 --- Zend/zend_compile.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index b87b1908b6..6efc1e17bb 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -6283,8 +6283,13 @@ void zend_do_foreach_cont(znode *foreach_token, const znode *open_brackets_token opline->extended_value |= ZEND_FE_FETCH_WITH_KEY; } - if ((key->op_type != IS_UNUSED) && (key->EA & ZEND_PARSED_REFERENCE_VARIABLE)) { + if ((key->op_type != IS_UNUSED)) { + if (key->EA & ZEND_PARSED_REFERENCE_VARIABLE) { zend_error(E_COMPILE_ERROR, "Key element cannot be a reference"); + } + if (key->EA & ZEND_PARSED_LIST_EXPR) { + zend_error(E_COMPILE_ERROR, "Cannot use list as Key element"); + } } if (value->EA & ZEND_PARSED_REFERENCE_VARIABLE) { -- 2.49.0