Skip to content

Release 3.2.4 supporting PHP 7.0-7.4 syntax

Compare
Choose a tag to compare
@TysonAndre TysonAndre released this 13 Nov 00:55
· 111 commits to master since this release
079a6fc

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

New features (Analysis):

  • Partially support self<A> and static<B> in phpdoc types. (#4226)
    This support is incomplete and may run into issues with inheritance.

Bug fixes:

  • Properly infer the literal string value of __FUNCTION__ for global functions in namespaces (#4231)
  • Fix false positive PhanPossiblyInfiniteLoop for do {} while (false); that is unchangeably false (#4236)
  • Infer that array_shift and array_pop return null when the passed in array could be empty, not false. (#4239)
  • Handle PhpToken::getAll() getting renamed to PhpToken::tokenize() in PHP 8.0.0RC4. (#4189)