[skip ci] Add NEWS/UPGRADING + wording amendment for GH-13483

This commit is contained in:
Gina Peter Bnayard 2024-08-14 13:52:07 +02:00
parent a79c70f574
commit d100caa476
3 changed files with 14 additions and 1 deletions

6
NEWS
View file

@ -4,6 +4,12 @@ PHP NEWS
- Core: - Core:
. Exiting a namespace now clears seen symbols. (ilutov) . Exiting a namespace now clears seen symbols. (ilutov)
. The exit (and die) language constructs now behave more like a function.
They can be passed liked callables, are affected by the strict_types
declare statement, and now perform the usual type coercions instead of
casting any non-integer value to a string.
As such, passing invalid types to exit/die may now result in a TypeError
being thrown. (Girgias)
15 Aug 2024, PHP 8.4.0beta1 15 Aug 2024, PHP 8.4.0beta1

View file

@ -37,6 +37,13 @@ PHP 8.4 UPGRADE NOTES
allowed, e.g. $ref = &$this->readonly. This was already forbidden for allowed, e.g. $ref = &$this->readonly. This was already forbidden for
readonly initialization, and was an oversight in the "readonly readonly initialization, and was an oversight in the "readonly
reinitialization during cloning" implementation. reinitialization during cloning" implementation.
. The exit (and die) language constructs now behave more like a function.
They can be passed liked callables, are affected by the strict_types
declare statement, and now perform the usual type coercions instead of
casting any non-integer value to a string.
As such, passing invalid types to exit/die may now result in a TypeError
being thrown.
RFC: https://wiki.php.net/rfc/exit-as-function
- DBA: - DBA:
. dba_open() and dba_popen() will now return a Dba\Connection . dba_open() and dba_popen() will now return a Dba\Connection

View file

@ -83,7 +83,7 @@ function processStubFile(string $stubFile, Context $context, bool $includeOnly =
} }
} }
/* As exit() and die() are proper token/keywords an need to hack-around */ /* Because exit() and die() are proper token/keywords we need to hack-around */
$hasSpecialExitAsFunctionHandling = str_ends_with($stubFile, 'zend_builtin_functions.stub.php'); $hasSpecialExitAsFunctionHandling = str_ends_with($stubFile, 'zend_builtin_functions.stub.php');
if (!$fileInfo = $context->parsedFiles[$stubFile] ?? null) { if (!$fileInfo = $context->parsedFiles[$stubFile] ?? null) {
initPhpParser(); initPhpParser();