summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Zend/tests/015.phpt14
-rw-r--r--Zend/zend.c1
-rw-r--r--Zend/zend_builtin_functions.c1
-rw-r--r--Zend/zend_constants.c1
-rw-r--r--Zend/zend_errors.h3
-rw-r--r--main/main.c2
-rw-r--r--php.ini-dist1
-rw-r--r--php.ini-recommended1
-rwxr-xr-xrun-tests.php2
9 files changed, 18 insertions, 8 deletions
diff --git a/Zend/tests/015.phpt b/Zend/tests/015.phpt
index a838e19da8..54914a5e8e 100644
--- a/Zend/tests/015.phpt
+++ b/Zend/tests/015.phpt
@@ -9,20 +9,19 @@ var_dump(trigger_error(array()));
var_dump(trigger_error("error", -1));
var_dump(trigger_error("error", 0));
var_dump(trigger_error("error", E_USER_WARNING));
+var_dump(trigger_error("error", E_USER_DEPRECATED));
echo "Done\n";
?>
---EXPECTF--
-Warning: Wrong parameter count for trigger_error() in %s on line %d
+--EXPECTF--
+Warning: trigger_error() expects at least 1 parameter, 0 given in %s on line %d
NULL
Notice: error in %s on line %d
bool(true)
-Notice: Array to string conversion in %s on line %d
-
-Notice: Array in %s on line %d
-bool(true)
+Warning: trigger_error() expects parameter 1 to be string (Unicode or binary), array given in %s on line %d
+NULL
Warning: Invalid error type specified in %s on line %d
bool(false)
@@ -32,4 +31,7 @@ bool(false)
Warning: error in %s on line %d
bool(true)
+
+Deprecated: error in %s on line %d
+bool(true)
Done
diff --git a/Zend/zend.c b/Zend/zend.c
index e2a1cacfe5..b232bd32be 100644
--- a/Zend/zend.c
+++ b/Zend/zend.c
@@ -1521,6 +1521,7 @@ ZEND_API void zend_error(int type, const char *format, ...) /* {{{ */
case E_USER_ERROR:
case E_USER_WARNING:
case E_USER_NOTICE:
+ case E_USER_DEPRECATED:
case E_RECOVERABLE_ERROR:
if (zend_is_compiling(TSRMLS_C)) {
error_filename = zend_get_compiled_filename(TSRMLS_C);
diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c
index a5971ec33f..b985181c10 100644
--- a/Zend/zend_builtin_functions.c
+++ b/Zend/zend_builtin_functions.c
@@ -1480,6 +1480,7 @@ ZEND_FUNCTION(trigger_error)
case E_USER_ERROR:
case E_USER_WARNING:
case E_USER_NOTICE:
+ case E_USER_DEPRECATED:
break;
default:
zend_error(E_WARNING, "Invalid error type specified");
diff --git a/Zend/zend_constants.c b/Zend/zend_constants.c
index 59f9a60d10..4e433b97b4 100644
--- a/Zend/zend_constants.c
+++ b/Zend/zend_constants.c
@@ -112,6 +112,7 @@ void zend_register_standard_constants(TSRMLS_D) /* {{{ */
REGISTER_MAIN_LONG_CONSTANT("E_USER_ERROR", E_USER_ERROR, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_USER_WARNING", E_USER_WARNING, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_USER_NOTICE", E_USER_NOTICE, CONST_PERSISTENT | CONST_CS);
+ REGISTER_MAIN_LONG_CONSTANT("E_USER_DEPRECATED", E_USER_DEPRECATED, CONST_PERSISTENT | CONST_CS);
REGISTER_MAIN_LONG_CONSTANT("E_ALL", E_ALL, CONST_PERSISTENT | CONST_CS);
diff --git a/Zend/zend_errors.h b/Zend/zend_errors.h
index 5dbf0ad6c1..9b7b3e37da 100644
--- a/Zend/zend_errors.h
+++ b/Zend/zend_errors.h
@@ -36,8 +36,9 @@
#define E_STRICT (1<<11L)
#define E_RECOVERABLE_ERROR (1<<12L)
#define E_DEPRECATED (1<<13L)
+#define E_USER_DEPRECATED (1<<14L)
-#define E_ALL (E_ERROR | E_WARNING | E_PARSE | E_NOTICE | E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_COMPILE_WARNING | E_USER_ERROR | E_USER_WARNING | E_USER_NOTICE | E_STRICT | E_RECOVERABLE_ERROR | E_DEPRECATED)
+#define E_ALL (E_ERROR | E_WARNING | E_PARSE | E_NOTICE | E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_COMPILE_WARNING | E_USER_ERROR | E_USER_WARNING | E_USER_NOTICE | E_STRICT | E_RECOVERABLE_ERROR | E_DEPRECATED | E_USER_DEPRECATED)
#define E_CORE (E_CORE_ERROR | E_CORE_WARNING)
#endif /* ZEND_ERRORS_H */
diff --git a/main/main.c b/main/main.c
index aec22b3cb4..33846443fd 100644
--- a/main/main.c
+++ b/main/main.c
@@ -944,6 +944,7 @@ static void php_error_cb(int type, const char *error_filename, const uint error_
break;
case E_STRICT:
case E_DEPRECATED:
+ case E_USER_DEPRECATED:
/* for the sake of BC to old damaged code */
break;
case E_NOTICE:
@@ -994,6 +995,7 @@ static void php_error_cb(int type, const char *error_filename, const uint error_
error_type_str = "Strict Standards";
break;
case E_DEPRECATED:
+ case E_USER_DEPRECATED:
error_type_str = "Deprecated";
break;
default:
diff --git a/php.ini-dist b/php.ini-dist
index 0428997ce6..dfc89142dc 100644
--- a/php.ini-dist
+++ b/php.ini-dist
@@ -245,6 +245,7 @@ memory_limit = 128M ; Maximum amount of memory a script may consume (128M)
; E_USER_NOTICE - user-generated notice message
; E_DEPRECATED - warn about code that will not work in future versions
; of PHP
+; E_USER_DEPRECATED - user-generated deprecation warnings
;
; Examples:
;
diff --git a/php.ini-recommended b/php.ini-recommended
index c5e6218e61..600ddf3a9e 100644
--- a/php.ini-recommended
+++ b/php.ini-recommended
@@ -282,6 +282,7 @@ memory_limit = 128M ; Maximum amount of memory a script may consume (128M)
; E_USER_NOTICE - user-generated notice message
; E_DEPRECATED - warn about code that will not work in future versions
; of PHP
+; E_USER_DEPRECATED - user-generated deprecation warnings
;
; Examples:
;
diff --git a/run-tests.php b/run-tests.php
index 6d1deb3e8a..13b7317664 100755
--- a/run-tests.php
+++ b/run-tests.php
@@ -166,7 +166,7 @@ $ini_overwrites = array(
'open_basedir=',
'disable_functions=',
'output_buffering=Off',
- 'error_reporting=16383',
+ 'error_reporting=30719',
'display_errors=1',
'display_startup_errors=1',
'log_errors=0',