Skip to content

Commit efec085

Browse files
Deprecate constant redeclaration
1 parent 6009b8a commit efec085

15 files changed

+19
-14
lines changed

NEWS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ PHP NEWS
77
triggers "Constant already defined" warning). (ilutov)
88
. Fixed bug GH-19476 (pipe operator fails to correctly handle returning
99
by reference). (alexandre-daubois)
10+
. Constant redeclaration is deprecated and this behavior will trigger an
11+
error in PHP 9. (alexandre-daubois)
1012

1113
- ODBC:
1214
. Remove ODBCVER and assume ODBC 3.5. (Calvin Buckley)

UPGRADING

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -337,6 +337,9 @@ PHP 8.5 UPGRADE NOTES
337337
. Returning null from __debugInfo() has been deprecated.
338338
Return an empty array instead.
339339
RFC: https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_debuginfo_returning_null
340+
. Constant redeclaration is deprecated and that behavior will trigger an
341+
error in PHP 9.
342+
RFC: https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_constant_redeclaration
340343

341344
- Curl:
342345
. The curl_close() function has been deprecated, as CurlHandle objects are

Zend/tests/attributes/constants/constant_redefined_addition.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ var_dump($reflection->getAttributes())
1515

1616
?>
1717
--EXPECTF--
18-
Warning: Constant MY_CONST already defined in %s on line %d
18+
Warning: Constant MY_CONST already defined, this will be an error in PHP 9 in %s on line %d
1919
No attributes
2020
array(0) {
2121
}

Zend/tests/attributes/constants/constant_redefined_change.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ var_dump($reflection->getAttributes())
1616

1717
?>
1818
--EXPECTF--
19-
Warning: Constant MY_CONST already defined in %s on line %d
19+
Warning: Constant MY_CONST already defined, this will be an error in PHP 9 in %s on line %d
2020
Has attributes (1)
2121
array(1) {
2222
[0]=>

Zend/tests/attributes/constants/constant_redefined_removal.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ var_dump($reflection->getAttributes())
1515

1616
?>
1717
--EXPECTF--
18-
Warning: Constant MY_CONST already defined in %s on line %d
18+
Warning: Constant MY_CONST already defined, this will be an error in PHP 9 in %s on line %d
1919
Has attributes
2020
array(1) {
2121
[0]=>

Zend/tests/bug29890.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,4 @@ define("TEST",3);
2020

2121
?>
2222
--EXPECT--
23-
error :Constant TEST already defined
23+
error :Constant TEST already defined, this will be an error in PHP 9

Zend/tests/constants/008.phpt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ echo "Done\n";
2727
--EXPECTF--
2828
TypeError: define(): Argument #1 ($constant_name) must be of type string, array given
2929

30-
Warning: Constant TRUE already defined in %s on line %d
30+
Warning: Constant TRUE already defined, this will be an error in PHP 9 in %s on line %d
3131
bool(false)
3232
bool(true)
3333
bool(true)
3434
bool(true)
3535

36-
Warning: Constant test const already defined in %s on line %d
36+
Warning: Constant test const already defined, this will be an error in PHP 9 in %s on line %d
3737
bool(false)
3838
bool(true)
3939
bool(true)

Zend/tests/constants/constants_001.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ var_dump(constant('1foo'));
1717

1818
?>
1919
--EXPECTF--
20-
Warning: Constant 1 already defined in %s on line %d
20+
Warning: Constant 1 already defined, this will be an error in PHP 9 in %s on line %d
2121
int(2)
2222
int(2)
2323
int(2)

Zend/tests/constants/constants_004.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ const foo = 2;
1010

1111
?>
1212
--EXPECTF--
13-
Warning: Constant foo\foo already defined in %s on line %d
13+
Warning: Constant foo\foo already defined, this will be an error in PHP 9 in %s on line %d

Zend/tests/constants/constants_008.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@ if (defined('a')) {
1313

1414
?>
1515
--EXPECTF--
16-
Warning: Constant a already defined in %s on line %d
16+
Warning: Constant a already defined, this will be an error in PHP 9 in %s on line %d
1717
2

0 commit comments

Comments
 (0)