File tree Expand file tree Collapse file tree 2 files changed +23
-0
lines changed Expand file tree Collapse file tree 2 files changed +23
-0
lines changed Original file line number Diff line number Diff line change @@ -2813,6 +2813,9 @@ static zend_always_inline zend_result _zend_update_type_info(
2813
2813
if (t1 & ((MAY_BE_ANY |MAY_BE_UNDEF ) - MAY_BE_STRING )) {
2814
2814
tmp |= (OP1_DATA_INFO () & (MAY_BE_ANY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_ANY | MAY_BE_ARRAY_OF_REF ));
2815
2815
2816
+ if (OP1_DATA_INFO () & MAY_BE_UNDEF ) {
2817
+ tmp |= MAY_BE_NULL ;
2818
+ }
2816
2819
if (opline -> op2_type == IS_UNUSED ) {
2817
2820
/* When appending to an array and the LONG_MAX key is already used
2818
2821
* null will be returned. */
Original file line number Diff line number Diff line change
1
+ --TEST--
2
+ JIT ASSIGN_DIM: 003
3
+ --INI--
4
+ opcache.enable=1
5
+ opcache.enable_cli=1
6
+ opcache.file_update_protection=0
7
+ opcache.jit_buffer_size=1M
8
+ opcache.jit=tracing
9
+ --EXTENSIONS--
10
+ opcache
11
+ --FILE--
12
+ <?php
13
+ function test () {
14
+ var_dump ($ a [0 ] = $ v );
15
+ }
16
+ test ();
17
+ ?>
18
+ --EXPECTF--
19
+ Warning: Undefined variable $v in %sassign_dim_003.php on line 3
20
+ NULL
You can’t perform that action at this time.
0 commit comments