1
0
mirror of https://github.com/php/php-src.git synced 2026-04-26 01:18:19 +02:00
Files
archived-php-src/ext/opcache/tests/ssa_bug_003.phpt
T
Christoph M. Becker 75bc3446f8 Add missing SKIPIFs
All these tests are meant to run with OPcache available, and some will
even fail inevitably without it, so we add OPcache as SKIPIF
requirement.
2019-07-01 17:21:16 +02:00

41 lines
717 B
PHP

--TEST--
Incorrect elision of return type checks
--SKIPIF--
<?php require_once('skipif.inc'); ?>
--FILE--
<?php
function test1($x) : callable {
if ($x == 1) {
$c = 'foo';
} elseif ($x == 2) {
$c = new stdClass;
} else {
$c = [$x => &$x];
}
return $c;
}
try {
test1(1);
} catch (Error $e) {
echo "Error: {$e->getMessage()}\n";
}
class Foo {}
function test2() : Foo {
$obj = new stdClass;
return $obj;
}
try {
test2();
} catch (Error $e) {
echo "Error: {$e->getMessage()}\n";
}
?>
--EXPECT--
Error: Return value of test1() must be callable, string returned
Error: Return value of test2() must be an instance of Foo, instance of stdClass returned