mirror of
https://github.com/php/php-src.git
synced 2026-03-24 00:02:20 +01:00
Fixed bug #81342
Allow arbitrary whitespace, not just horizontal spaces.
This commit is contained in:
4
NEWS
4
NEWS
@@ -2,6 +2,10 @@ PHP NEWS
|
||||
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||
?? ??? ????, PHP 8.1.0beta3
|
||||
|
||||
- Core:
|
||||
. Fixed bug #81342 (New ampersand token parsing depends on new line after it).
|
||||
(Nikita)
|
||||
|
||||
- Date:
|
||||
. Fixed bug #79580 (date_create_from_format misses leap year). (Derick)
|
||||
. Fixed bug #80963 (DateTimeZone::getTransitions() truncated). (Derick)
|
||||
|
||||
@@ -1858,7 +1858,7 @@ NEWLINE ("\r"|"\n"|"\r\n")
|
||||
RETURN_TOKEN(T_SR);
|
||||
}
|
||||
|
||||
<ST_IN_SCRIPTING>"&"{TABS_AND_SPACES}("$"|"...") {
|
||||
<ST_IN_SCRIPTING>"&"[ \t\r\n]*("$"|"...") {
|
||||
yyless(1);
|
||||
RETURN_TOKEN(T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG);
|
||||
}
|
||||
|
||||
29
ext/tokenizer/tests/bug81342.phpt
Normal file
29
ext/tokenizer/tests/bug81342.phpt
Normal file
@@ -0,0 +1,29 @@
|
||||
--TEST--
|
||||
Bug #81342: New ampersand token parsing depends on new line after it
|
||||
--FILE--
|
||||
<?php
|
||||
|
||||
$tokens = PhpToken::tokenize('<?php $x & $x; $x &
|
||||
$baz;
|
||||
');
|
||||
foreach ($tokens as $token) {
|
||||
echo $token->getTokenName(), "\n";
|
||||
}
|
||||
|
||||
?>
|
||||
--EXPECT--
|
||||
T_OPEN_TAG
|
||||
T_VARIABLE
|
||||
T_WHITESPACE
|
||||
T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG
|
||||
T_WHITESPACE
|
||||
T_VARIABLE
|
||||
;
|
||||
T_WHITESPACE
|
||||
T_VARIABLE
|
||||
T_WHITESPACE
|
||||
T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG
|
||||
T_WHITESPACE
|
||||
T_VARIABLE
|
||||
;
|
||||
T_WHITESPACE
|
||||
Reference in New Issue
Block a user