From 30f1be78c27cad3b4c98c4310e6398bf34e9e5e6 Mon Sep 17 00:00:00 2001 From: Zeev Suraski Date: Wed, 11 Feb 2004 15:50:23 +0000 Subject: [PATCH] Turn off bogus warnings with overloaded dimensions and += (and friends) --- Zend/zend_execute.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 01ad93e3f7..bd25bb7aed 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -932,8 +932,14 @@ static void zend_fetch_dimension_address(znode *result, znode *op1, znode *op2, zval *overloaded_result = Z_OBJ_HT_P(container)->read_dimension(container, dim, type TSRMLS_CC); if (overloaded_result) { - if (type == BP_VAR_RW && !overloaded_result->is_ref) { - zend_error(E_ERROR, "Objects used as arrays in post/pre increment/decrement must return values by reference"); + switch (type) { + case BP_VAR_RW: + case BP_VAR_W: + if (overloaded_result->type != IS_OBJECT + && !overloaded_result->is_ref) { + zend_error(E_ERROR, "Objects used as arrays in post/pre increment/decrement must return values by reference"); + } + break; } *retval = &overloaded_result; -- 2.40.0