bug43332_1.phpt 556 B

12345678910111213141516171819
  1. --TEST--
  2. Bug #43332.1 (self and parent as type hint in namespace)
  3. --FILE--
  4. <?php
  5. namespace foobar;
  6. class foo {
  7. public function bar(self $a) { }
  8. }
  9. $foo = new foo;
  10. $foo->bar($foo); // Ok!
  11. $foo->bar(new \stdclass); // Error, ok!
  12. --EXPECTF--
  13. Fatal error: Uncaught TypeError: Argument 1 passed to foobar\foo::bar() must be an instance of foobar\foo, instance of stdClass given, called in %sbug43332_1.php on line 10 and defined in %sbug43332_1.php:5
  14. Stack trace:
  15. #0 %s(%d): foobar\foo->bar(Object(stdClass))
  16. #1 {main}
  17. thrown in %sbug43332_1.php on line 5