From 8a83aed45847edf7e6ed59a996bc991dec3ef96b Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Mon, 22 Jun 2015 16:24:11 +0200 Subject: [PATCH] Drop duplicate object-to-type notices We already generate a recoverable fatal for these earlier, no need to throw an additional notice. --- Zend/tests/call_with_refs.phpt | 1 - Zend/zend_operators.c | 12 ++---------- ext/openssl/tests/003.phpt | 1 - ext/standard/tests/general_functions/type.phpt | 1 - tests/classes/tostring_004.phpt | 1 - 5 files changed, 2 insertions(+), 14 deletions(-) diff --git a/Zend/tests/call_with_refs.phpt b/Zend/tests/call_with_refs.phpt index acad134f874..84c4edfc209 100644 --- a/Zend/tests/call_with_refs.phpt +++ b/Zend/tests/call_with_refs.phpt @@ -14,5 +14,4 @@ $data = call_user_func_array("substr_replace",array(&$my_var, new StdClass(),1)) echo "OK!"; --EXPECT-- Object of class stdClass could not be converted to string -Object of class stdClass to string conversion OK! diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c index 26584745dcc..d9670a5a499 100644 --- a/Zend/zend_operators.c +++ b/Zend/zend_operators.c @@ -226,7 +226,7 @@ try_again: /* }}} */ -/* {{{ convert_object_to_type */ +/* {{{ convert_object_to_type: dst will be either ctype or UNDEF */ #define convert_object_to_type(op, dst, ctype, conv_func) \ ZVAL_UNDEF(dst); \ if (Z_OBJ_HT_P(op)->cast_object) { \ @@ -332,7 +332,6 @@ try_again: if (Z_TYPE(dst) == IS_LONG) { ZVAL_COPY_VALUE(op, &dst); } else { - zend_error(E_NOTICE, "Object of class %s could not be converted to int", Z_OBJCE_P(op)->name->val); ZVAL_LONG(op, 1); } @@ -393,8 +392,6 @@ try_again: if (Z_TYPE(dst) == IS_DOUBLE) { ZVAL_COPY_VALUE(op, &dst); } else { - zend_error(E_NOTICE, "Object of class %s could not be converted to float", Z_OBJCE_P(op)->name->val); - ZVAL_DOUBLE(op, 1.0); } break; @@ -542,13 +539,11 @@ try_again: zval dst; convert_object_to_type(op, &dst, IS_STRING, convert_to_string); + zval_dtor(op); if (Z_TYPE(dst) == IS_STRING) { - zval_dtor(op); ZVAL_COPY_VALUE(op, &dst); } else { - zend_error(E_NOTICE, "Object of class %s to string conversion", Z_OBJCE_P(op)->name->val); - zval_dtor(op); ZVAL_NEW_STR(op, zend_string_init("Object", sizeof("Object")-1, 0)); } break; @@ -742,7 +737,6 @@ try_again: if (Z_TYPE(dst) == IS_LONG) { return Z_LVAL(dst); } else { - zend_error(E_NOTICE, "Object of class %s could not be converted to int", Z_OBJCE_P(op)->name->val); return 1; } } @@ -782,8 +776,6 @@ try_again: if (Z_TYPE(dst) == IS_DOUBLE) { return Z_DVAL(dst); } else { - zend_error(E_NOTICE, "Object of class %s could not be converted to double", Z_OBJCE_P(op)->name->val); - return 1.0; } } diff --git a/ext/openssl/tests/003.phpt b/ext/openssl/tests/003.phpt index 92c8c85b138..39363c4548c 100644 --- a/ext/openssl/tests/003.phpt +++ b/ext/openssl/tests/003.phpt @@ -27,7 +27,6 @@ echo "Done\n"; ?> --EXPECTF-- string(57) "Object of class stdClass could not be converted to string" -string(45) "Object of class stdClass to string conversion" string(66) "openssl_pkcs7_decrypt(): unable to coerce parameter 3 to x509 cert" bool(false) object(stdClass)#1 (0) { diff --git a/ext/standard/tests/general_functions/type.phpt b/ext/standard/tests/general_functions/type.phpt index 74ba9e61036..eb6f0672fea 100644 --- a/ext/standard/tests/general_functions/type.phpt +++ b/ext/standard/tests/general_functions/type.phpt @@ -345,7 +345,6 @@ string(14) "Resource id #%d" bool(true) string(14) "Resource id #%d" string(57) "Object of class stdClass could not be converted to string" -string(45) "Object of class stdClass to string conversion" bool(true) string(6) "Object" Done diff --git a/tests/classes/tostring_004.phpt b/tests/classes/tostring_004.phpt index de0283e8e62..48e86682359 100644 --- a/tests/classes/tostring_004.phpt +++ b/tests/classes/tostring_004.phpt @@ -38,7 +38,6 @@ printf($obj . "\n"); Object with no __toString(): Try 1: Error: 4096 - Object of class stdClass could not be converted to string -Error: 8 - Object of class stdClass to string conversion Object Try 2: