0.616
What's Changed
- Add a compiler hint to improve Luau memory allocation inlining
New Type Solver
- Added a system for recommending explicit type annotations to users in cases where we've inferred complex generic types with type families.
- Marked string library functions as
@checked
for use in new non-strict mode. - Fixed a bug with new non-strict mode where we would incorrectly report arity mismatches when missing optional arguments.
- Implement an occurs check for unifications that would produce self-recursive types.
- Fix bug where overload resolution would fail when applied to non-overloaded functions.
- Fix bug that caused the subtyping to report an error whenever a generic was instantiated in an invariant context.
- Fix crash caused by
SetPropConstraint
not blocking properly. - Fix bug where type checker forgot the refined rvalue when mutating a property.
Native Code Generation
- Implement optimization to eliminate dead stores
- Optimize vector ops for X64 when the source is computed (thanks, @zeux!)
- Use more efficient lowering for UNM_* (thanks, @zeux!)
Internal Contributors
Co-authored-by: Aaron Weiss [email protected]
Co-authored-by: Alexander McCord [email protected]
Co-authored-by: Andy Friesen [email protected]
Co-authored-by: David Cope [email protected]
Co-authored-by: Lily Brown [email protected]
Co-authored-by: Vyacheslav Egorov [email protected]