1--TEST-- 2Only arrays and Traversables can be unpacked 3--FILE-- 4<?php 5 6function test(...$args) { 7 var_dump($args); 8} 9 10try { 11 test(...null); 12} catch (Error $e) { 13 echo $e->getMessage(), "\n"; 14} 15try { 16 test(...42); 17} catch (Error $e) { 18 echo $e->getMessage(), "\n"; 19} 20try { 21 test(...new stdClass); 22} catch (Error $e) { 23 echo $e->getMessage(), "\n"; 24} 25 26try { 27 test(1, 2, 3, ..."foo", ...[4, 5]); 28} catch (Error $e) { 29 echo $e->getMessage(), "\n"; 30} 31try { 32 test(1, 2, 3, ...new StdClass, ...3.14, ...[4, 5]); 33} catch (Error $e) { 34 echo $e->getMessage(), "\n"; 35} 36 37?> 38--EXPECT-- 39Only arrays and Traversables can be unpacked 40Only arrays and Traversables can be unpacked 41Only arrays and Traversables can be unpacked 42Only arrays and Traversables can be unpacked 43Only arrays and Traversables can be unpacked 44