diff options
Diffstat (limited to 'Zend/tests/bug74164.phpt')
| -rw-r--r-- | Zend/tests/bug74164.phpt | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Zend/tests/bug74164.phpt b/Zend/tests/bug74164.phpt new file mode 100644 index 0000000000..354b2f51e0 --- /dev/null +++ b/Zend/tests/bug74164.phpt @@ -0,0 +1,20 @@ +--TEST-- +Bug #74164 (PHP hangs when an invalid value is dynamically passed to typehinted by-ref arg) +--FILE-- +<?php + +namespace Foo; + +set_error_handler(function ($type, $msg) { + throw new \Exception($msg); +}); + +call_user_func(function (array &$ref) {var_dump("xxx");}, 'not_an_array_variable'); +?> +--EXPECTF-- +Fatal error: Uncaught Exception: Parameter 1 to Foo\{closure}() expected to be a reference, value given in %sbug74164.php:%d +Stack trace: +#0 [internal function]: Foo\{closure}(%s) +#1 %sbug74164.php(%d): call_user_func(%s) +#2 {main} + thrown in %sbug74164.php on line %d |
