bug60217b.phpt 514 B

1234567891011121314151617181920212223242526
  1. --TEST--
  2. Bug #60217 (Requiring the same method from different traits and abstract methods have to be compatible)
  3. --FILE--
  4. <?php
  5. trait TBroken1 {
  6. public abstract function foo($a);
  7. }
  8. trait TBroken2 {
  9. public abstract function foo($a, $b = 0);
  10. }
  11. class CBroken {
  12. use TBroken1, TBroken2;
  13. public function foo($a) {
  14. echo 'FOO';
  15. }
  16. }
  17. $o = new CBroken;
  18. $o->foo(1);
  19. ?>
  20. --EXPECTF--
  21. Fatal error: Declaration of CBroken::foo($a) must be compatible with TBroken2::foo($a, $b = 0) in %s on line %d