1
0
mirror of https://github.com/php/php-src.git synced 2026-04-20 22:41:20 +02:00
Files
archived-php-src/Zend/tests/exception_017.phpt
Nikita Popov 21148679d1 Handle "non well formed" exception during ZPP
Previously if the "non well formed" notice was converted into an
exception we'd still end up executing the function.

Also drop the now unnecessary EG(exception) checks in the engine.

Additionally remote a bogus exception in zend_is_callable: It
should only be writing to error, but not directly throwing.
2019-10-08 17:17:49 +02:00

41 lines
668 B
PHP

--TEST--
Exceptions on improper usage of $this
--FILE--
<?php
abstract class C {
abstract static function foo();
}
function foo(callable $x) {
}
try {
C::foo();
} catch (Error $e) {
echo $e, "\n\n";
}
try {
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: Argument 1 passed to foo() must be callable, string given, called in %s on line %d and defined 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