mirror of
https://github.com/php/php-src.git
synced 2026-03-24 00:02:20 +01:00
[RFC] Deprecate constant redeclaration (#19474)
https://wiki.php.net/rfc/deprecations_php_8_5
This commit is contained in:
committed by
GitHub
parent
dbf0102b15
commit
010fe2bb42
2
NEWS
2
NEWS
@@ -8,6 +8,8 @@ PHP NEWS
|
||||
. Fixed bug GH-19476 (pipe operator fails to correctly handle returning
|
||||
by reference). (alexandre-daubois)
|
||||
. The report_memleaks INI directive has been deprecated. (alexandre-daubois)
|
||||
. Constant redeclaration is deprecated and this behavior will trigger an
|
||||
error in PHP 9. (alexandre-daubois)
|
||||
|
||||
- ODBC:
|
||||
. Remove ODBCVER and assume ODBC 3.5. (Calvin Buckley)
|
||||
|
||||
@@ -346,6 +346,9 @@ PHP 8.5 UPGRADE NOTES
|
||||
RFC: https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_debuginfo_returning_null
|
||||
. The report_memleaks INI directive has been deprecated.
|
||||
RFC: https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_the_report_memleaks_ini_directive
|
||||
. Constant redeclaration is deprecated and that behavior will trigger an
|
||||
error in PHP 9.
|
||||
RFC: https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_constant_redeclaration
|
||||
|
||||
- Curl:
|
||||
. The curl_close() function has been deprecated, as CurlHandle objects are
|
||||
|
||||
@@ -15,7 +15,7 @@ var_dump($reflection->getAttributes())
|
||||
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant MY_CONST already defined in %s on line %d
|
||||
Warning: Constant MY_CONST already defined, this will be an error in PHP 9 in %s on line %d
|
||||
No attributes
|
||||
array(0) {
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ var_dump($reflection->getAttributes())
|
||||
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant MY_CONST already defined in %s on line %d
|
||||
Warning: Constant MY_CONST already defined, this will be an error in PHP 9 in %s on line %d
|
||||
Has attributes (1)
|
||||
array(1) {
|
||||
[0]=>
|
||||
|
||||
@@ -15,7 +15,7 @@ var_dump($reflection->getAttributes())
|
||||
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant MY_CONST already defined in %s on line %d
|
||||
Warning: Constant MY_CONST already defined, this will be an error in PHP 9 in %s on line %d
|
||||
Has attributes
|
||||
array(1) {
|
||||
[0]=>
|
||||
|
||||
@@ -20,4 +20,4 @@ define("TEST",3);
|
||||
|
||||
?>
|
||||
--EXPECT--
|
||||
error :Constant TEST already defined
|
||||
error :Constant TEST already defined, this will be an error in PHP 9
|
||||
|
||||
@@ -27,13 +27,13 @@ echo "Done\n";
|
||||
--EXPECTF--
|
||||
TypeError: define(): Argument #1 ($constant_name) must be of type string, array given
|
||||
|
||||
Warning: Constant TRUE already defined in %s on line %d
|
||||
Warning: Constant TRUE already defined, this will be an error in PHP 9 in %s on line %d
|
||||
bool(false)
|
||||
bool(true)
|
||||
bool(true)
|
||||
bool(true)
|
||||
|
||||
Warning: Constant test const already defined in %s on line %d
|
||||
Warning: Constant test const already defined, this will be an error in PHP 9 in %s on line %d
|
||||
bool(false)
|
||||
bool(true)
|
||||
bool(true)
|
||||
|
||||
@@ -17,7 +17,7 @@ var_dump(constant('1foo'));
|
||||
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant 1 already defined in %s on line %d
|
||||
Warning: Constant 1 already defined, this will be an error in PHP 9 in %s on line %d
|
||||
int(2)
|
||||
int(2)
|
||||
int(2)
|
||||
|
||||
@@ -10,4 +10,4 @@ const foo = 2;
|
||||
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant foo\foo already defined in %s on line %d
|
||||
Warning: Constant foo\foo already defined, this will be an error in PHP 9 in %s on line %d
|
||||
|
||||
@@ -13,5 +13,5 @@ if (defined('a')) {
|
||||
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant a already defined in %s on line %d
|
||||
Warning: Constant a already defined, this will be an error in PHP 9 in %s on line %d
|
||||
2
|
||||
|
||||
@@ -14,6 +14,6 @@ var_dump(constant('__COMPILER_HALT_OFFSET__1'.chr(0)));
|
||||
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant __COMPILER_HALT_OFFSET__ already defined in %s on line %d
|
||||
Warning: Constant __COMPILER_HALT_OFFSET__ already defined, this will be an error in PHP 9 in %s on line %d
|
||||
int(1)
|
||||
int(4)
|
||||
|
||||
@@ -5,4 +5,4 @@ __HALT_COMPILER(); bad define() of __COMPILER_HALT_OFFSET__ 1
|
||||
define ('__COMPILER_HALT_OFFSET__', 1);
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant __COMPILER_HALT_OFFSET__ already defined in %s on line %d
|
||||
Warning: Constant __COMPILER_HALT_OFFSET__ already defined, this will be an error in PHP 9 in %s on line %d
|
||||
|
||||
@@ -7,4 +7,4 @@ __HALT_COMPILER();
|
||||
?>
|
||||
==DONE==
|
||||
--EXPECTF--
|
||||
Warning: Constant __COMPILER_HALT_OFFSET__ already defined in %s on line %d
|
||||
Warning: Constant __COMPILER_HALT_OFFSET__ already defined, this will be an error in PHP 9 in %s on line %d
|
||||
|
||||
@@ -541,7 +541,7 @@ ZEND_API zend_constant *zend_register_constant(zend_constant *c)
|
||||
|| (!persistent && zend_get_special_const(ZSTR_VAL(name), ZSTR_LEN(name)))
|
||||
|| (ret = zend_hash_add_constant(EG(zend_constants), name, c)) == NULL
|
||||
) {
|
||||
zend_error(E_WARNING, "Constant %s already defined", ZSTR_VAL(name));
|
||||
zend_error(E_WARNING, "Constant %s already defined, this will be an error in PHP 9", ZSTR_VAL(name));
|
||||
zend_string_release(c->name);
|
||||
if (c->filename) {
|
||||
zend_string_release(c->filename);
|
||||
|
||||
@@ -21,5 +21,5 @@ include($file);
|
||||
@unlink(__DIR__ . "/bug71127.inc");
|
||||
?>
|
||||
--EXPECTF--
|
||||
Warning: Constant FOO already defined in %sbug71127.inc on line %d
|
||||
Warning: Constant FOO already defined, this will be an error in PHP 9 in %sbug71127.inc on line %d
|
||||
okey
|
||||
|
||||
Reference in New Issue
Block a user