TypePHP 编译器
https://swoole.com/aot/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
752 B
43 lines
752 B
--TEST--
|
|
GH-16957 (Assertion failure in array_shift with self-referencing array)
|
|
--SKIPIF--
|
|
<?php die("skip AOT array_shift with self-reference differs from PHP"); ?>
|
|
--FILE--
|
|
<?php
|
|
$new_array = array(&$new_array, 1, 'two');
|
|
var_dump($shifted = array_shift($new_array));
|
|
var_dump($new_array);
|
|
var_dump($new_array === $shifted);
|
|
|
|
$new_array2 = array(&$new_array2, 2 => 1, 300 => 'two');
|
|
var_dump($shifted = array_shift($new_array2));
|
|
var_dump($new_array2);
|
|
var_dump($new_array2 === $shifted);
|
|
?>
|
|
--EXPECT--
|
|
array(2) {
|
|
[0]=>
|
|
int(1)
|
|
[1]=>
|
|
string(3) "two"
|
|
}
|
|
array(2) {
|
|
[0]=>
|
|
int(1)
|
|
[1]=>
|
|
string(3) "two"
|
|
}
|
|
bool(true)
|
|
array(2) {
|
|
[0]=>
|
|
int(1)
|
|
[1]=>
|
|
string(3) "two"
|
|
}
|
|
array(2) {
|
|
[0]=>
|
|
int(1)
|
|
[1]=>
|
|
string(3) "two"
|
|
}
|
|
bool(true)
|
|
|