Skip to content

Conversation

@cmb69
Copy link
Member

@cmb69 cmb69 commented Aug 21, 2019

As of PHP 7.3.0, the rules regarding the heredoc and nowdoc closing
identifier have been relaxed. While formerly, the closing identifier
was required to be placed at the beginning of a line and to be
immediately followed by a semicolon and a line break, it may now be
preceeded by whitespace, and may be followed by any non-word character.
We adjust the recognition logic respectively.

@cmb69 cmb69 changed the title Fix #77812: Interactive mode does not support PHP 7.3-style heredoc [WiP] Fix #77812: Interactive mode does not support PHP 7.3-style heredoc Aug 21, 2019
@cmb69
Copy link
Member Author

cmb69 commented Aug 21, 2019

This PR is blocked by bug #78441.

cmb69 added 5 commits August 22, 2019 09:29
As of PHP 7.3.0, the rules regarding the heredoc and nowdoc closing
identifier have been relaxed.  While formerly, the closing identifier
was required to be placed at the beginning of a line and to be
immediately followed by a semicolon and a line break, it may now be
preceeded by whitespace, and may be followed by any non-word character.
We adjust the recognition logic respectively.
This case is already handled by the more general following elseif-then,
so we can drop it.
@cmb69
Copy link
Member Author

cmb69 commented Aug 22, 2019

Rebased onto current PHP-7.3 (to get the fix for bug # 78441), and added a test with a trailing digit. I've also catered to extended ASCII characters, which are permissible in (heredoc) labels.

@cmb69 cmb69 changed the title [WiP] Fix #77812: Interactive mode does not support PHP 7.3-style heredoc Fix #77812: Interactive mode does not support PHP 7.3-style heredoc Aug 22, 2019
@cmb69
Copy link
Member Author

cmb69 commented Aug 23, 2019

Thanks! Applied as 03c7749.

@cmb69 cmb69 closed this Aug 23, 2019
@cmb69 cmb69 deleted the fix-77812 branch August 23, 2019 12:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants