Release Notes

Dear Community,

On behalf of the Haxe Foundation, we are proud to announce the official release of Haxe 4.3.5!

This release includes a number of bugfixes, as well as some nice things we thought would be useful before Haxe 5 release:

  • Mac OS universal binaries, now supporting Apple Silicon
  • Json RPC Diagnostics, to be used with the upcoming version 2.32.0 of vshaxe

Check out the changelog below for more information.

If you have any suggestions or run into any problems, feel free to open an issue on GitHub.

Thanks to everyone involved!

Change Log

2024-07-18 4.3.5

General improvements:

  • all : macOS universal binaries (#11572)
  • display : migrated diagnostics to Json RPC (#11707)
  • macro : expose TVar VStatic flag in macros. (#11683)

Bugfixes:

  • all : fix @:structInit with getter + setter (#11662)
  • all : add missing recursion when checking abstract casts (#11676)
  • all : fail nicer if unify_min can't find a common type (#11684)
  • all : fix pretty errors failure (#11700)
  • all : disallow local statics when inlining (#11725)
  • display : unused pattern variables should be marked as unused (#7282)
  • display : diagnostics miss "used without being initialized" errors (#7931)
  • display : recursive inline is not supported on enum abstract constructor (#11177)
  • display : Void as value error disappears on second compilation (#11184)
  • display : false positives of "This cast has no effect, but some of its sub-expressions" (#11203)
  • cpp : inherit @:unreflective on generic classes
  • hl : fix bit shift + assignment in while loop header (#10783)
  • hl : fix do-while loop in genhl+hlopt (#11461)
  • hl/c : use uint64 instead of uint64_t for shift cast (#11721)
  • macro : don't choke on namePos for reification pattern matching (#11671)

Deprecation / future version handling:

  • macro : Compiler.include() warning when used outside init macros