php-src/Zend/tests/bug48248.phpt
Nikita Popov 5a4cb3edde Fix missing access errors for guarded properties
If a property access would normally result in a magic method call,
but the property is subject to an active recursion guard, the
access should behave as if the magic method does not exist.

This commit fixes one instance where this was not the case -- we
should have been generating a property access error, but instead
the operation simply did not do anything.
2018-09-27 14:58:26 +02:00

29 lines
422 B
PHP

--TEST--
Bug #48248 (SIGSEGV when access to private property via &__get)
--FILE--
<?php
class A
{
public function & __get($name)
{
return $this->test;
}
}
class B extends A
{
private $test;
}
$b = new B;
var_dump($b->test);
?>
--EXPECTF--
Fatal error: Uncaught Error: Cannot access private property B::$test in %s:%d
Stack trace:
#0 %s(%d): A->__get('test')
#1 {main}
thrown in %s on line %d