diff --git a/Zend/Optimizer/zend_dump.c b/Zend/Optimizer/zend_dump.c index 16cb751882427..a2460efa9d0c4 100644 --- a/Zend/Optimizer/zend_dump.c +++ b/Zend/Optimizer/zend_dump.c @@ -618,7 +618,7 @@ ZEND_API void zend_dump_op(const zend_op_array *op_array, const zend_basic_block } if (ZEND_VM_EXT_ARRAY_INIT & flags) { fprintf(stderr, " %u", opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT); - if (!(opline->extended_value & ZEND_ARRAY_NOT_PACKED)) { + if (opline->op1_type != IS_UNUSED && !(opline->extended_value & ZEND_ARRAY_NOT_PACKED)) { fprintf(stderr, " (packed)"); } } diff --git a/ext/standard/tests/array/array_map_foreach_optimization_001.phpt b/ext/standard/tests/array/array_map_foreach_optimization_001.phpt index 49031942d20e4..187b36d822548 100644 --- a/ext/standard/tests/array/array_map_foreach_optimization_001.phpt +++ b/ext/standard/tests/array/array_map_foreach_optimization_001.phpt @@ -31,7 +31,7 @@ $_main: 0003 V2 = DO_ICALL 0004 ASSIGN CV0($array) V2 0005 TYPE_ASSERT 131079 string("array_map") CV0($array) -0006 T2 = INIT_ARRAY 0 (packed) NEXT +0006 T2 = INIT_ARRAY 0 NEXT 0007 V3 = FE_RESET_R CV0($array) 0014 0008 T5 = FE_FETCH_R V3 T4 0014 0009 INIT_FCALL 1 %d string("plus1") diff --git a/ext/standard/tests/array/array_map_foreach_optimization_002.phpt b/ext/standard/tests/array/array_map_foreach_optimization_002.phpt index 79b7df08b6108..9c604a99132df 100644 --- a/ext/standard/tests/array/array_map_foreach_optimization_002.phpt +++ b/ext/standard/tests/array/array_map_foreach_optimization_002.phpt @@ -37,7 +37,7 @@ $_main: 0006 SEND_VAR%S CV0($array) 1 0007 DO_FCALL 0008 TYPE_ASSERT 131079 string("array_map") V5 -0009 T2 = INIT_ARRAY 0 (packed) NEXT +0009 T2 = INIT_ARRAY 0 NEXT 0010 V3 = FE_RESET_R V5 0017 0011 T5 = FE_FETCH_R V3 T4 0017 0012 INIT_FCALL 1 %d string("plus1") diff --git a/ext/standard/tests/array/array_map_foreach_optimization_003.phpt b/ext/standard/tests/array/array_map_foreach_optimization_003.phpt index 7a287f54f783e..9aeb54aa66475 100644 --- a/ext/standard/tests/array/array_map_foreach_optimization_003.phpt +++ b/ext/standard/tests/array/array_map_foreach_optimization_003.phpt @@ -24,7 +24,7 @@ $_main: ; (after optimizer) ; %s 0000 TYPE_ASSERT 131079 string("array_map") array(...) -0001 T1 = INIT_ARRAY 0 (packed) NEXT +0001 T1 = INIT_ARRAY 0 NEXT 0002 V2 = FE_RESET_R array(...) 0009 0003 T4 = FE_FETCH_R V2 T3 0009 0004 INIT_FCALL 1 %d string("plus1") diff --git a/ext/standard/tests/array/array_map_foreach_optimization_004.phpt b/ext/standard/tests/array/array_map_foreach_optimization_004.phpt index b97ed1e31d3df..1423d3e3a3b2c 100644 --- a/ext/standard/tests/array/array_map_foreach_optimization_004.phpt +++ b/ext/standard/tests/array/array_map_foreach_optimization_004.phpt @@ -29,7 +29,7 @@ $_main: 0003 V1 = DO_ICALL 0004 ASSIGN CV0($array) V1 0005 TYPE_ASSERT 131079 string("array_map") CV0($array) -0006 T1 = INIT_ARRAY 0 (packed) NEXT +0006 T1 = INIT_ARRAY 0 NEXT 0007 V2 = FE_RESET_R CV0($array) 0014 0008 T4 = FE_FETCH_R V2 T3 0014 0009 INIT_FCALL 1 %d string("stdclass") diff --git a/ext/standard/tests/array/array_map_foreach_optimization_005.phpt b/ext/standard/tests/array/array_map_foreach_optimization_005.phpt index 6f7cf45021371..06bb1ddc97ee6 100644 --- a/ext/standard/tests/array/array_map_foreach_optimization_005.phpt +++ b/ext/standard/tests/array/array_map_foreach_optimization_005.phpt @@ -33,7 +33,7 @@ $_main: 0003 V2 = DO_ICALL 0004 ASSIGN CV0($array) V2 0005 TYPE_ASSERT 131079 string("array_map") CV0($array) -0006 T2 = INIT_ARRAY 0 (packed) NEXT +0006 T2 = INIT_ARRAY 0 NEXT 0007 V3 = FE_RESET_R CV0($array) 0014 0008 T5 = FE_FETCH_R V3 T4 0014 0009 INIT_STATIC_METHOD_CALL 1 string("Adder") string("plus1")