mirror of
https://github.com/php/php-src.git
synced 2024-10-16 22:12:33 +00:00
9f66085649
# Bug was uncovered by discussion in http://news.php.net/php.internals/54129 # Forgot to check the actual value of the initializer comparison, only checked # whether comparison was successful which is not enough.
23 lines
544 B
PHP
23 lines
544 B
PHP
--TEST--
|
|
Properties are considered incompatible if they are different in any of their
|
|
defined characteristics. Thus, initialization values have to be equal, too.
|
|
--FILE--
|
|
<?php
|
|
error_reporting(E_ALL);
|
|
|
|
trait foo
|
|
{
|
|
public $zoo = 'foo::zoo';
|
|
}
|
|
|
|
class baz
|
|
{
|
|
use foo;
|
|
public $zoo = 'baz::zoo';
|
|
}
|
|
|
|
$obj = new baz();
|
|
echo $obj->zoo, "\n";
|
|
?>
|
|
--EXPECTF--
|
|
Fatal error: baz and foo define the same property ($zoo) in the composition of baz. However, the definition differs and is considered incompatible. Class was composed in %s on line %d
|