]> granicus.if.org Git - php/commitdiff
Merge branch 'PHP-7.3' into PHP-7.4
authorNikita Popov <nikita.ppv@gmail.com>
Fri, 5 Jul 2019 09:41:57 +0000 (11:41 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Fri, 5 Jul 2019 09:41:57 +0000 (11:41 +0200)
1  2 
ext/opcache/Optimizer/zend_inference.c

index ed9fc4878c07a015d7bba14030a1580f64684957,e37ab32681a7904d8023e83851c928c3e9251946..a80eb58a087c363464a49f2adf4bb7bb6a660980
@@@ -3414,18 -3227,31 +3414,16 @@@ static int zend_update_type_info(const 
                                                case ZEND_FETCH_DIM_RW:
                                                case ZEND_FETCH_DIM_FUNC_ARG:
                                                case ZEND_FETCH_LIST_W:
-                                               case ZEND_ASSIGN_OP:
-                                               case ZEND_ASSIGN_DIM_OP:
-                                               case ZEND_ASSIGN_OBJ_OP:
-                                               case ZEND_ASSIGN_STATIC_PROP_OP:
                                                case ZEND_ASSIGN_DIM:
++                                              case ZEND_ASSIGN_DIM_OP:
                                                        tmp |= MAY_BE_ARRAY | MAY_BE_ARRAY_OF_ARRAY;
                                                        break;
 -                                              case ZEND_ASSIGN_ADD:
 -                                              case ZEND_ASSIGN_SUB:
 -                                              case ZEND_ASSIGN_MUL:
 -                                              case ZEND_ASSIGN_DIV:
 -                                              case ZEND_ASSIGN_MOD:
 -                                              case ZEND_ASSIGN_SL:
 -                                              case ZEND_ASSIGN_SR:
 -                                              case ZEND_ASSIGN_CONCAT:
 -                                              case ZEND_ASSIGN_BW_OR:
 -                                              case ZEND_ASSIGN_BW_AND:
 -                                              case ZEND_ASSIGN_BW_XOR:
 -                                              case ZEND_ASSIGN_POW:
 -                                                      if (op_array->opcodes[j].extended_value == ZEND_ASSIGN_DIM) {
 -                                                              tmp |= MAY_BE_ARRAY | MAY_BE_ARRAY_OF_ARRAY;
 -                                                      } else if (op_array->opcodes[j].extended_value == ZEND_ASSIGN_OBJ) {
 -                                                              tmp |= MAY_BE_ARRAY_OF_OBJECT;
 -                                                      }
 -                                                      break;
                                                case ZEND_FETCH_OBJ_W:
                                                case ZEND_FETCH_OBJ_RW:
                                                case ZEND_FETCH_OBJ_FUNC_ARG:
                                                case ZEND_ASSIGN_OBJ:
++                                              case ZEND_ASSIGN_OBJ_OP:
 +                                              case ZEND_ASSIGN_OBJ_REF:
                                                case ZEND_PRE_INC_OBJ:
                                                case ZEND_PRE_DEC_OBJ:
                                                case ZEND_POST_INC_OBJ: