cvs: ZendEngine2 / zend_execute.c
| From: | Zeev Suraski | Date: | Wed, 11 Feb 2004 15:50:24 +0000 |
| Subject: | cvs: ZendEngine2 / zend_execute.c | ||
| Groups: | php.zend-engine.cvs | ||
| Request: | Send a blank email to php-zend-engine-cvs+get-2355@lists.php.net to get a copy of this message | ||
zeev Wed Feb 11 10:50:24 2004 EDT
Modified files:
/ZendEngine2 zend_execute.c
Log:
Turn off bogus warnings with overloaded dimensions and += (and friends)
http://cvs.php.net/diff.php/ZendEngine2/zend_execute.c?r1=1.605&r2=1.606&ty=u
Index: ZendEngine2/zend_execute.c
diff -u ZendEngine2/zend_execute.c:1.605 ZendEngine2/zend_execute.c:1.606
--- ZendEngine2/zend_execute.c:1.605 Wed Feb 11 08:58:29 2004
+++ ZendEngine2/zend_execute.c Wed Feb 11 10:50:23 2004
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: zend_execute.c,v 1.605 2004/02/11 13:58:29 zeev Exp $ */
+/* $Id: zend_execute.c,v 1.606 2004/02/11 15:50:23 zeev Exp $ */
#define ZEND_INTENSIVE_DEBUGGING 0
@@ -932,8 +932,14 @@
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;