Bug 551301 - PHP 7.4 Support
Summary: PHP 7.4 Support
Status: CLOSED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: PDT (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 10
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: PHP Core CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-09-20 04:54 EDT by Thierry BLIND CLA
Modified: 2020-05-14 11:25 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thierry BLIND CLA 2019-09-20 04:54:51 EDT
PHP 7.4 is now in RC2 status and will be released the November 28th, 2019.

Major changes that will affect PDT and need to be implemented:
- arrow functions (https://wiki.php.net/rfc/arrow_functions_v2)
- typed properties (https://wiki.php.net/rfc/typed_properties_v2)
- spread operator in arrays (https://wiki.php.net/rfc/spread_operator_for_array)
- null coalescing assignment operator (https://wiki.php.net/rfc/null_coalesce_equal_operator)
- allow underscores in numeric values (https://wiki.php.net/rfc/numeric_literal_separator)

Also see:
https://github.com/php/php-src/blob/PHP-7.4/UPGRADING
And grammars from:
https://github.com/nikic/PHP-Parser/tree/master/grammar
https://github.com/php/php-src/tree/master/Zend

This report will be a placeholder for all progress done concerning PHP 7.4 support in PDT.

Thierry.
Comment 2 Thierry BLIND CLA 2019-09-20 06:40:41 EDT
(In reply to Eclipse Genie from comment #1)
> Gerrit change https://git.eclipse.org/r/148565 was merged to [master].
> Commit:
> http://git.eclipse.org/c/pdt/org.eclipse.pdt.git/commit/
> ?id=1cf9b8ff190d85587b76a89efd1f323cd9996522

What still needs to be done:
- update CA, TI and the variable validator to support arrow functions,
typed properties and spread operators. Parameter highlighting for nested normal, anonymous and/or arrow functions should also be fixed (it depends on the variable validator).
  @Dawid, your help would be more than helpful :)

On my side, I'll do at least:
- write specific PHP 7.4 JUnit tests
- update the ASTRewriteAnalyzer class
- update the PHP 7.4 language documentation once the PHP 7.4 binaries are available

Note that my first patch also fixes PHP bug_71897.
For more informations see https://bugs.php.net/bug.php?id=71897 and https://github.com/php/php-src/commit/660e88c19d98b8353995d750940d8513bfeca85f#diff-93ad74868f98ff7232ebea00007c8b7f
Comment 3 Eclipse Genie CLA 2019-09-29 13:55:10 EDT
New Gerrit change created: https://git.eclipse.org/r/150340
Comment 5 Eclipse Genie CLA 2019-09-29 14:51:39 EDT
New Gerrit change created: https://git.eclipse.org/r/150341
Comment 7 Eclipse Genie CLA 2019-11-04 09:52:55 EST
New Gerrit change created: https://git.eclipse.org/r/151962
Comment 9 Eclipse Genie CLA 2019-12-01 10:30:38 EST
New Gerrit change created: https://git.eclipse.org/r/153616
Comment 11 Eclipse Genie CLA 2019-12-02 02:32:17 EST
New Gerrit change created: https://git.eclipse.org/r/153629
Comment 13 Eclipse Genie CLA 2019-12-02 04:53:05 EST
New Gerrit change created: https://git.eclipse.org/r/153632
Comment 15 Dawid Pakula CLA 2019-12-20 09:32:14 EST
Marking as resolved. Improvements should be done as separate tasks.