- Fixed bug #44805 (rename() function is not portable to Windows). (Pierre)
- Fixed bug #44779 (filter returns NULL in CLI when it shouldn't). (Arnaud)
- Fixed bug #44742 (timezone_offset_get() causes segmentation faults). (Derick)
+- Fixed bug #44660 (Indexed and reference assignment to propery of non-object
+ don't trigger warning). (Dmitry)
- Fixed bug #44648 (Attribute names not checked for wellformedness). (Rob)
- Fixed bug #44414 (Incomplete reporting about abstract methods). (Dmitry)
- Fixed bug #44390 (mysqli_bind_param/bind_result and Object member variables).
--- /dev/null
+--TEST--
+Bug #44660 (Indexed and reference assignment to propery of non-object don't trigger warning)
+--FILE--
+<?php
+$s = "hello";
+$a = true;
+
+echo "--> read access: ";
+echo $a->p;
+
+echo "\n--> direct assignment: ";
+$a->p = $s;
+
+echo "\n--> increment: ";
+$a->p++;
+
+echo "\n--> reference assignment:";
+$a->p =& $s;
+
+echo "\n--> reference assignment:";
+$s =& $a->p;
+
+echo "\n--> indexed assignment:";
+$a->p[0] = $s;
+
+echo "\n--> Confirm assignments have had no impact:\n";
+var_dump($a);
+?>
+--EXPECTF--
+--> read access:
+Notice: Trying to get property of non-object in %sbug44660.php on line 6
+
+--> direct assignment:
+Warning: Attempt to assign property of non-object in %sbug44660.php on line 9
+
+--> increment:
+Warning: Attempt to increment/decrement property of non-object in %sbug44660.php on line 12
+
+--> reference assignment:
+Warning: Attempt to modify property of non-object in %sbug44660.php on line 15
+
+--> reference assignment:
+Warning: Attempt to modify property of non-object in %sbug44660.php on line 18
+
+--> indexed assignment:
+Warning: Attempt to modify property of non-object in %sbug44660.php on line 21
+
+--> Confirm assignments have had no impact:
+bool(true)
}
object_init(container);
} else {
+ zend_error(E_WARNING, "Attempt to modify property of non-object");
result->var.ptr_ptr = &EG(error_zval_ptr);
PZVAL_LOCK(EG(error_zval_ptr));
return;