[php-src] master: VM: Also exclude CV for exception check in include_or_eval

From: Date: Fri, 02 Oct 2026 22:19:32 +0000
Subject: [php-src] master: VM: Also exclude CV for exception check in include_or_eval
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-141902@lists.php.net to get a copy of this message
Author: ndossche (ndossche) Date: 2026-10-03T00:19:09+02:00 Commit: https://github.com/php/php-src/commit/459f8cb22bb795f620f1d6fdfbba374c6520ea03 Raw diff: https://github.com/php/php-src/commit/459f8cb22bb795f620f1d6fdfbba374c6520ea03.diff VM: Also exclude CV for exception check in include_or_eval Follow-up for e7b225697ef2251e3ecfdd21984489c633f94101 Changed paths: M Zend/zend_vm_def.h M Zend/zend_vm_execute.h Diff: diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index efa05df6aa6f..19fa358cb54c 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -6684,7 +6684,7 @@ ZEND_VM_HANDLER(73, ZEND_INCLUDE_OR_EVAL, CONST|TMP|CV, ANY, EVAL, SPEC(OBSERVER } } FREE_OP1(); - if (OP1_TYPE & IS_CONST) { + if (OP1_TYPE & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index 243716bfe87c..1b30ad218f23 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -5464,7 +5464,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_OPCODE_HANDLER_FUNC_CCONV ZEND_INCLUDE_OR_EV } - if (IS_CONST & IS_CONST) { + if (IS_CONST & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); @@ -5551,7 +5551,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_OPCODE_HANDLER_FUNC_CCONV ZEND_INCLUDE_OR_EV } } FREE_OP(opline->op1_type, opline->op1.var); - if (opline->op1_type & IS_CONST) { + if (opline->op1_type & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); @@ -17660,7 +17660,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_OPCODE_HANDLER_FUNC_CCONV ZEND_INCLUDE_OR_EV } } zval_ptr_dtor_nogc(EX_VAR(opline->op1.var)); - if (IS_TMP_VAR & IS_CONST) { + if (IS_TMP_VAR & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); @@ -40438,7 +40438,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_OPCODE_HANDLER_FUNC_CCONV ZEND_INCLUDE_OR_EV } - if (IS_CV & IS_CONST) { + if (IS_CV & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); @@ -58325,7 +58325,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_OPCODE_HANDLER_CCONV ZEND_INCLUDE_OR_EVAL_SP } - if (IS_CONST & IS_CONST) { + if (IS_CONST & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); @@ -58412,7 +58412,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_OPCODE_HANDLER_CCONV ZEND_INCLUDE_OR_EVAL_SP } } FREE_OP(opline->op1_type, opline->op1.var); - if (opline->op1_type & IS_CONST) { + if (opline->op1_type & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); @@ -70419,7 +70419,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_OPCODE_HANDLER_CCONV ZEND_INCLUDE_OR_EVAL_SP } } zval_ptr_dtor_nogc(EX_VAR(opline->op1.var)); - if (IS_TMP_VAR & IS_CONST) { + if (IS_TMP_VAR & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); @@ -93097,7 +93097,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_OPCODE_HANDLER_CCONV ZEND_INCLUDE_OR_EVAL_SP } - if (IS_CV & IS_CONST) { + if (IS_CV & (IS_CONST|IS_CV)) { ZEND_VM_NEXT_OPCODE(); } else { ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION();

« previous php.cvs (#141902) next »