php-src/Zend/tests/traits/language011.phpt
Stefan Marr 1d2a63da5f Changed collision warning for Traits to fatal error.
#This change is made to have all possible cases of collisions consistently handled as fatal errors.
#The reason to have it fatal is that most likely something changed unexpectedly and needs urgent attention by the developer, since it will fail eventually anyway for instance because the expected method is missing in the class.
#Discussed in this thread: http://marc.info/?l=php-internals&m=129155790226876
2010-12-12 16:48:02 +00:00

31 lines
531 B
PHP

--TEST--
Aliasing leading to conflict should result in error message
--FILE--
<?php
error_reporting(E_ALL);
trait Hello {
public function sayHello() {
echo 'Hello';
}
}
trait World {
public function sayHello() {
echo ' World!';
}
}
class MyClass {
use Hello, World { sayHello as sayWorld; }
}
$o = new MyClass();
$o->sayHello();
$o->sayWorld();
?>
--EXPECTF--
Fatal error: Trait method sayWorld has not been applied, because there are collisions with other trait methods on MyClass in %s on line %d