diff options
Diffstat (limited to 'ext/reflection/tests/bug69802.phpt')
-rw-r--r-- | ext/reflection/tests/bug69802.phpt | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/ext/reflection/tests/bug69802.phpt b/ext/reflection/tests/bug69802.phpt new file mode 100644 index 0000000000..e71ac1aa71 --- /dev/null +++ b/ext/reflection/tests/bug69802.phpt @@ -0,0 +1,27 @@ +--TEST-- +Bug #69802 (Reflection on Closure::__invoke borks type hint class name) +--FILE-- +<?php +$f = function(stdClass $x): stdClass {}; +$r = new ReflectionMethod($f, '__invoke'); +var_dump($r->getParameters()[0]->getName()); +var_dump($r->getParameters()[0]->getClass()); +echo $r->getParameters()[0], "\n"; +echo $r->getReturnType(),"\n"; +echo $r,"\n"; +?> +--EXPECT-- +string(1) "x" +object(ReflectionClass)#4 (1) { + ["name"]=> + string(8) "stdClass" +} +Parameter #0 [ <required> stdClass $x ] +stdClass +Method [ <internal> public method __invoke ] { + + - Parameters [1] { + Parameter #0 [ <required> stdClass $x ] + } + - Return [ stdClass ] +} |