Releases: xp-framework/compiler
Releases · xp-framework/compiler
9.3.2: Match expressions fix
- Fixed empty match expressions and match expressions with default
case only in PHP 7
(@thekid) - Added tests verifying closures are supported in constant expressions
https://wiki.php.net/rfc/closures_in_const_expr
(@thekid)
9.3.1: References & reflection fix
- Fixed
private(set)
not being implicitely marked as final, see
https://wiki.php.net/rfc/asymmetric-visibility-v2#inheritance
(@thekid) - Fixed enclosing scopes when using references - @thekid
9.3.0: PHP 8.4 emitter
- Fixed checks for property hooks emulation with asymmetric visibility
(@thekid) - Added PHP 8.4 emitter which natively emits property hooks and asymmetric
visibility syntax. This is integration-tested with PHP 8.4.0 Beta 4.
See https://github.com/php/php-src/blob/php-8.4.0beta4/NEWS
(@thekid) - Changed emitter to use native readonly classes in PHP 8.2, fixing an
inconsistency with accessing undefined properties
(@thekid)
9.2.0: Asymmetric visibility
- Merged PR #183: Add emitting support for asymmetric visibility. See
https://wiki.php.net/rfc/asymmetric-visibility-v2, targeted for PHP 8.4
(@thekid)
9.1.1: Forward compatibility fix
- Forward compatibility with newer
xp-framework/ast
releases - @thekid
9.1.0: Property hooks
- Merged PR #166: Implement property hooks via virtual properties, see
https://wiki.php.net/rfc/property-hooks. Includes support for native
implementation, which is yet to be merged (php/php-src#13455). Thus,
this still might be a moving target in some regards!
(@thekid)
9.0.0: XP 12 compatibility
8.17.2: Implicitely nullable type fix
- Fixed implicitely nullable type warnings for parameters with non-
constant expressions (e.g.$param= new Handle(0)
) in PHP 8.4, see
https://wiki.php.net/rfc/deprecate-implicitly-nullable-types
(@thekid)
8.17.1: Closure emitting fix
- Fixed emitting captures and return types for closures - @thekid