com php-src: Fixed warning of no return in non-void funciton: Zend/zend_vm_def.h Zend/zend_vm_execute.h Zend/ zend_vm_gen.php
| From: | Xinchen Hui | Date: | Fri, 14 Dec 2012 09:21:43 +0000 |
| Subject: | com php-src: Fixed warning of no return in non-void funciton: Zend/zend_vm_def.h Zend/zend_vm_execute.h Zend/ zend_vm_gen.php | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-70723@lists.php.net to get a copy of this message | ||
Commit: 9fb5cfdeb1f13f2e3ab3751494cdd366bc78cb38
Author: Xinchen Hui <laruence@php.net> Fri, 14 Dec 2012 17:21:43 +0800
Parents: 359d91a80756cd9a9ce945c0e3aa1d2038633e7a
Branches: PHP-5.5
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=9fb5cfdeb1f13f2e3ab3751494cdd366bc78cb38
Log:
Fixed warning of no return in non-void funciton
Changed paths:
M Zend/zend_vm_def.h
M Zend/zend_vm_execute.h
M Zend/zend_vm_gen.php
Diff:
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index a9ed07e..f7b10a2 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -1330,6 +1330,7 @@ ZEND_VM_HANDLER(96, ZEND_FETCH_DIM_UNSET, VAR|CV, CONST|TMP|VAR|CV)
FREE_OP1_VAR_PTR();
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -2757,6 +2758,7 @@ ZEND_VM_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, CONST|TMP|VAR|CV)
ZEND_VM_NEXT_OPCODE();
} else {
zend_error_noreturn(E_ERROR, "Function name must be a string");
+ ZEND_VM_NEXT_OPCODE(); /* Never reached */
}
}
}
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 6890f58..c077d5d 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -1339,6 +1339,7 @@ static int ZEND_FASTCALL
ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE
ZEND_VM_NEXT_OPCODE();
} else {
zend_error_noreturn(E_ERROR, "Function name must be a string");
+ ZEND_VM_NEXT_OPCODE(); /* Never reached */
}
}
}
@@ -1659,6 +1660,7 @@ static int ZEND_FASTCALL
ZEND_INIT_FCALL_BY_NAME_SPEC_TMP_HANDLER(ZEND_OPCODE_H
ZEND_VM_NEXT_OPCODE();
} else {
zend_error_noreturn(E_ERROR, "Function name must be a string");
+ ZEND_VM_NEXT_OPCODE(); /* Never reached */
}
}
}
@@ -1839,6 +1841,7 @@ static int ZEND_FASTCALL
ZEND_INIT_FCALL_BY_NAME_SPEC_VAR_HANDLER(ZEND_OPCODE_H
ZEND_VM_NEXT_OPCODE();
} else {
zend_error_noreturn(E_ERROR, "Function name must be a string");
+ ZEND_VM_NEXT_OPCODE(); /* Never reached */
}
}
}
@@ -2054,6 +2057,7 @@ static int ZEND_FASTCALL
ZEND_INIT_FCALL_BY_NAME_SPEC_CV_HANDLER(ZEND_OPCODE_HA
ZEND_VM_NEXT_OPCODE();
} else {
zend_error_noreturn(E_ERROR, "Function name must be a string");
+ ZEND_VM_NEXT_OPCODE(); /* Never reached */
}
}
}
@@ -14882,6 +14886,7 @@ static int ZEND_FASTCALL
ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST_HANDLER(ZEND_OPCOD
if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -17219,6 +17224,7 @@ static int ZEND_FASTCALL
ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_
if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -19470,6 +19476,7 @@ static int ZEND_FASTCALL
ZEND_FETCH_DIM_UNSET_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_
if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -22915,6 +22922,7 @@ static int ZEND_FASTCALL
ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_H
if (free_op1.var) {zval_ptr_dtor(&free_op1.var);};
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -32299,6 +32307,7 @@ static int ZEND_FASTCALL
ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_HANDLER(ZEND_OPCODE
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -34411,6 +34420,7 @@ static int ZEND_FASTCALL
ZEND_FETCH_DIM_UNSET_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_H
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -36529,6 +36539,7 @@ static int ZEND_FASTCALL
ZEND_FETCH_DIM_UNSET_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_H
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -39697,6 +39708,7 @@ static int ZEND_FASTCALL
ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HA
if (UNEXPECTED(EX_T(opline->result.var).var.ptr_ptr == NULL)) {
zend_error_noreturn(E_ERROR, "Cannot unset string offsets");
+ ZEND_VM_NEXT_OPCODE();
} else {
zend_free_op free_res;
zval **retval_ptr = EX_T(opline->result.var).var.ptr_ptr;
@@ -40810,6 +40822,7 @@ static int ZEND_FASTCALL
ZEND_YIELD_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS
static int ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
{
zend_error_noreturn(E_ERROR, "Invalid opcode %d/%d/%d..", OPLINE->opcode,
OPLINE->op1_type, OPLINE->op2_type);
+ ZEND_VM_NEXT_OPCODE(); /* Never reached */
}
diff --git a/Zend/zend_vm_gen..php b/Zend/zend_vm_gen.php
index b56dd70..42f17ed 100644
--- a/Zend/zend_vm_gen.php
+++ b/Zend/zend_vm_gen.php
@@ -710,6 +710,7 @@ function gen_null_handler($f) {
out($f,"static int ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS)\n");
out($f,"{\n");
out($f,"\tzend_error_noreturn(E_ERROR, \"Invalid opcode %d/%d/%d.\",
OPLINE->opcode, OPLINE->op1_type, OPLINE->op2_type);\n");
+ out($f,"\tZEND_VM_NEXT_OPCODE(); /* Never reached */\n");
out($f,"}\n\n");
}
}
@@ -784,10 +785,12 @@ function gen_executor_code($f, $spec, $kind, $prolog) {
case ZEND_VM_KIND_SWITCH:
out($f,"default:\n");
out($f,"\tzend_error_noreturn(E_ERROR, \"Invalid opcode %d/%d/%d.\",
OPLINE->opcode, OPLINE->op1_type, OPLINE->op2_type);\n");
+ out($f,"\tZEND_VM_NEXT_OPCODE(); /* Never reached */\n");
break;
case ZEND_VM_KIND_GOTO:
out($f,"ZEND_NULL_HANDLER:\n");
out($f,"\tzend_error_noreturn(E_ERROR, \"Invalid opcode %d/%d/%d.\",
OPLINE->opcode, OPLINE->op1_type, OPLINE->op2_type);\n");
+ out($f,"\tZEND_VM_NEXT_OPCODE(); /* Never reached */\n");
break;
}
}