ID:               37144
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
-Status:           Assigned
+Status:           Closed
 Bug Type:         Scripting Engine problem
 Operating System: *
 PHP Version:      5.1.2
 Assigned To:      dmitry
 New Comment:

Fixed in CVS HEAD and PHP_5_2.


Previous Comments:
------------------------------------------------------------------------

[2006-04-20 16:58:10] [EMAIL PROTECTED]

PHP always segfaults with this script if it is compied with
--enable-debug.

------------------------------------------------------------------------

[2006-04-20 13:09:18] smlerman at gmail dot com

I don't get a segfault on Windows 5.1.1, Linux 5.1.1 (compiled on
Ubuntu), or Linux 5.1.2 (compiled on Fedora).

As a side note, should that even be valid syntax? Shouldn't the left
side of assignment only allow variables (other than the special
language construct list())? Isn't foo()->bar[1] an expression, not a
variable?

------------------------------------------------------------------------

[2006-04-20 08:30:53] [EMAIL PROTECTED]

Description:
------------
PHP removes a temorary object then tryes to assign into its property.
As a result we have SIGSEGV.

Reproduce code:
---------------
<?php
function foo() {
  $x = new stdClass();
  $x->bar = array(1);
  return $x;
}
foo()->bar[1] = "123";
echo "ok\n";
?>

Expected result:
----------------
ok

Actual result:
--------------
crash and/or memory leaks


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=37144&edit=1

Reply via email to