]> granicus.if.org Git - php/commitdiff
COALESCE can't throw exception
authorDmitry Stogov <dmitry@zend.com>
Tue, 6 Dec 2016 07:21:44 +0000 (10:21 +0300)
committerDmitry Stogov <dmitry@zend.com>
Tue, 6 Dec 2016 07:21:44 +0000 (10:21 +0300)
Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index 6f2592bc0590188d5b80a3176cb3c409e7ba1cd2..6e2f31a4424d8ff09f058ec3ca4a8f972d41fa82 100644 (file)
@@ -6698,7 +6698,8 @@ ZEND_VM_HANDLER(169, ZEND_COALESCE, CONST|TMP|VAR|CV, JMP_ADDR)
                                Z_ADDREF_P(result);
                        }
                }
-               ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_SET_OPCODE(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_CONTINUE();
        }
 
        FREE_OP1();
index 3eb1f63c1fea109a2d4593e9858b025fe7837397..f1e9e6fd841d3b50276e07cd703c053018d26728 100644 (file)
@@ -3856,7 +3856,8 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COALESCE_SPEC_CONST_HANDLER(ZE
                                Z_ADDREF_P(result);
                        }
                }
-               ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_SET_OPCODE(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_CONTINUE();
        }
 
        ZEND_VM_NEXT_OPCODE();
@@ -13147,7 +13148,8 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COALESCE_SPEC_TMP_HANDLER(ZEND
                                Z_ADDREF_P(result);
                        }
                }
-               ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_SET_OPCODE(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_CONTINUE();
        }
 
        zval_ptr_dtor_nogc(free_op1);
@@ -17071,7 +17073,8 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COALESCE_SPEC_VAR_HANDLER(ZEND
                                Z_ADDREF_P(result);
                        }
                }
-               ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_SET_OPCODE(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_CONTINUE();
        }
 
        zval_ptr_dtor_nogc(free_op1);
@@ -33883,7 +33886,8 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COALESCE_SPEC_CV_HANDLER(ZEND_
                                Z_ADDREF_P(result);
                        }
                }
-               ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_SET_OPCODE(OP_JMP_ADDR(opline, opline->op2));
+               ZEND_VM_CONTINUE();
        }
 
        ZEND_VM_NEXT_OPCODE();