summaryrefslogtreecommitdiff
path: root/Zend/zend_compile.c
diff options
context:
space:
mode:
authorZeev Suraski <zeev@php.net>1999-08-14 11:50:36 +0000
committerZeev Suraski <zeev@php.net>1999-08-14 11:50:36 +0000
commitef5b7e212da5c1c4315d2807d69e1a9a71b08a6f (patch)
treead72b9c63feb011b92367f371becc24404611ed0 /Zend/zend_compile.c
parent2560bfd5f9b135211aec3d65b2be47cda44f673f (diff)
downloadphp-git-ef5b7e212da5c1c4315d2807d69e1a9a71b08a6f.tar.gz
Generate better warnings for class/function redefinitions
Diffstat (limited to 'Zend/zend_compile.c')
-rw-r--r--Zend/zend_compile.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c
index bf14b1fd54..9337ca5275 100644
--- a/Zend/zend_compile.c
+++ b/Zend/zend_compile.c
@@ -891,7 +891,7 @@ static void do_inherit_parent_constructor(zend_class_entry *ce)
}
-ZEND_API int do_bind_function_or_class(zend_op *opline, HashTable *function_table, HashTable *class_table, int allow_failure)
+ZEND_API int do_bind_function_or_class(zend_op *opline, HashTable *function_table, HashTable *class_table, int compile_time)
{
switch (opline->extended_value) {
case ZEND_DECLARE_FUNCTION: {
@@ -900,8 +900,8 @@ ZEND_API int do_bind_function_or_class(zend_op *opline, HashTable *function_tabl
zend_hash_index_find(function_table, opline->op1.u.constant.value.lval, (void **) &function);
(*function->op_array.refcount)++;
if (zend_hash_add(function_table, opline->op2.u.constant.value.str.val, opline->op2.u.constant.value.str.len+1, function, sizeof(zend_function), NULL)==FAILURE) {
- if (!allow_failure) {
- zend_error(E_COMPILE_ERROR, "Cannot redeclare %s()", opline->op2.u.constant.value.str.val);
+ if (!compile_time) {
+ zend_error(E_ERROR, "Cannot redeclare %s()", opline->op2.u.constant.value.str.val);
}
return FAILURE;
} else {
@@ -915,8 +915,8 @@ ZEND_API int do_bind_function_or_class(zend_op *opline, HashTable *function_tabl
zend_hash_index_find(class_table, opline->op1.u.constant.value.lval, (void **) &ce);
(*ce->refcount)++;
if (zend_hash_add(class_table, opline->op2.u.constant.value.str.val, opline->op2.u.constant.value.str.len+1, ce, sizeof(zend_class_entry), NULL)==FAILURE) {
- if (!allow_failure) {
- zend_error(E_COMPILE_ERROR, "Cannot redeclare class %s", opline->op2.u.constant.value.str.val);
+ if (!compile_time) {
+ zend_error(E_ERROR, "Cannot redeclare class %s", opline->op2.u.constant.value.str.val);
}
return FAILURE;
} else {
@@ -937,14 +937,14 @@ ZEND_API int do_bind_function_or_class(zend_op *opline, HashTable *function_tabl
parent_name = opline->op2.u.constant.value.str.val;
class_name = strchr(opline->op2.u.constant.value.str.val, ':');
if (!class_name) {
- zend_error(E_COMPILE_ERROR, "Invalid runtime class entry");
+ zend_error(E_CORE_ERROR, "Invalid runtime class entry");
}
*class_name++ = 0;
/* Obtain parent class */
if (zend_hash_find(class_table, parent_name, strlen(parent_name)+1, (void **) &parent_ce)==FAILURE) {
- if (!allow_failure) {
- zend_error(E_COMPILE_ERROR, "Class %s: Cannot inherit from undefined class %s", class_name, parent_name);
+ if (!compile_time) {
+ zend_error(E_ERROR, "Class %s: Cannot inherit from undefined class %s", class_name, parent_name);
}
(*ce->refcount)--;
*(class_name-1) = ':';
@@ -959,8 +959,8 @@ ZEND_API int do_bind_function_or_class(zend_op *opline, HashTable *function_tabl
/* Register the derived class */
if (zend_hash_add(class_table, class_name, strlen(class_name)+1, ce, sizeof(zend_class_entry), NULL)==FAILURE) {
- if (allow_failure) {
- zend_error(E_COMPILE_ERROR, "Cannot redeclare class %s", opline->op2.u.constant.value.str.val);
+ if (compile_time) {
+ zend_error(E_ERROR, "Cannot redeclare class %s", opline->op2.u.constant.value.str.val);
}
(*ce->refcount)--;
zend_hash_destroy(&ce->function_table);