php-src/Zend/tests/exception_017.phpt

41 lines
653 B
Plaintext
Raw Normal View History

--TEST--
Exceptions on improper usage of $this
--FILE--
<?php
abstract class C {
2020-02-04 05:52:20 +08:00
abstract static function foo();
}
function foo(callable $x) {
}
try {
2020-02-04 05:52:20 +08:00
C::foo();
} catch (Error $e) {
echo $e, "\n\n";
}
try {
2020-02-04 05:52:20 +08:00
foo("C::foo");
} catch (Error $e) {
echo $e, "\n\n";
}
C::foo();
?>
--EXPECTF--
Error: Cannot call abstract method C::foo() in %s:%d
Stack trace:
#0 {main}
TypeError: foo(): Argument #1 ($x) must be of type callable, string given, called in %s:%d
Stack trace:
#0 %s(%d): foo('C::foo')
#1 {main}
Fatal error: Uncaught Error: Cannot call abstract method C::foo() in %s:%d
Stack trace:
#0 {main}
thrown in %s on line %d