Skip to content

0.602

Compare
Choose a tag to compare
@github-actions github-actions released this 03 Nov 23:54
7105c81

What's changed?

  • Fixed a bug in type cloning by maintaining persistent types.
  • We now detect imprecise integer literals and flag the imprecision as a lint warning.
  • Parsing is now up to 10% faster due to improved inlining.

New type solver

  • LValues now take into account the type being assigned during constraint generation.
  • Normalization performance has been improved by 33% by replacing the an internal usage of std::unordered_set with DenseHashMap.
  • Normalization now has a helper to identify types that are equivalent to unknown, which is being used to fix some bugs in subtyping.
  • Uses of the old unifier in the new type solver have been eliminated.
  • Improved error explanations for subtyping errors.

Native code generation

  • Introduce instruction and block count limiters for controlling what bytecode is translated into native code.
  • Implement code generation for bit32.byteswap.
  • Marginally speed up method calls for tables via : in some cases.