The Phan 3.x release line uses php-ast
's AST version 70 and supports the analysis of all PHP 8.0 syntax except attributes (when run with PHP 8).
The planned 4.x release line will use AST version 80 and require php-ast
1.0.10+ in order to parse/analyze PHP 8.0's #[]
attributes
Bug fixes:
- Fix false positive PhanUnusedVariable for variable redefined in loop (#4301)
- Fix handling of
-z
/--signature-compatibility
- that option now enablesanalyze_signature_compatibility
instead of disabling it. (#4303) - Fix possible
PhanCoalescingNeverUndefined
for variable defined in catch block (#4305) - Don't emit
PhanCompatibleConstructorPropertyPromotion
whenminimum_target_php_version
is 8.0 or newer. (#4307) - Infer that PHP 8.0 constructor property promotion's properties have write references. (#4308)
They are written to by the constructor. - Inherit phpdoc parameter types for the property declaration in php 8.0 constructor property promotion (#4311)