xref: /PHP-8.4/Zend/tests/traits/language011.phpt (revision d9219f99)
1--TEST--
2Aliasing on conflicting method should not cover up conflict.
3--FILE--
4<?php
5error_reporting(E_ALL);
6
7trait Hello {
8   public function sayHello() {
9     echo 'Hello';
10   }
11}
12
13trait World {
14   public function sayHello() {
15     echo ' World!';
16   }
17}
18
19
20class MyClass {
21   use Hello, World { World::sayHello as sayWorld; }
22}
23
24$o = new MyClass();
25$o->sayHello();
26$o->sayWorld();
27
28?>
29--EXPECTF--
30Fatal error: Trait method World::sayHello has not been applied as MyClass::sayHello, because of collision with Hello::sayHello in %s on line %d
31