Bug #77539 [Opn]: BC break in heredoc syntax in 7.3

[email protected] Tue, 29 Jan 2019 12:28:30 +0000
Newsgroups php.standards
Message-ID <[email protected]>
Edit report at https://bugs.php.net/bug.php?id=77539&edit=1

 ID:                 77539
 Updated by:         [email protected]
 Reported by:        rasc at jfmedier dot dk
 Summary:            BC break in heredoc syntax in 7.3
 Status:             Open
 Type:               Bug
 Package:            PHP Language Specification
 Operating System:   Windows 10 / WSL
 PHP Version:        7.3.1
 Block user comment: N
 Private report:     N

 New Comment:

Isn't this the part mentioned at http://php.net/manual/en/migration73.incompatible.php 🤔 ?

> Due to the introduction of flexible heredoc/nowdoc syntax, doc strings that contain the ending label inside their body may cause syntax errors or change in interpretation


Previous Comments:
------------------------------------------------------------------------
[2019-01-29 10:20:27] rasc at jfmedier dot dk

Description:
------------
PHP 7.3 introduced a minor BC syntax break against 7.2.

Likely this regression was introduced while refactoring to introduce support for flexible heredoc/nowdoc syntax in 7.3.

You can see a failing build here:

https://travis-ci.org/kodus/mail/jobs/485801377

This build succeeds under 7.1 and 7.2, but fails under 7.3.

You can see the parse error affecting 7.3.0 and 7.3.1 here:

https://3v4l.org/1H0l7

(by the way: looks like the documentation page was never updated to reflect changed from the flexible heredoc/nowdoc syntax RFC.)


Test script:
---------------
<?php

$mime_header = <<<MIME
Date: Thu, 15 Sep 2016 17:20:54 +0200
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
MIME;


Expected result:
----------------
Should compile.


Actual result:
--------------
Exits with the following error:

> Parse error: syntax error, unexpected ':' in /in/1H0l7 on line 5



------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=77539&edit=1