0.623
What's changed?
New Type Solver
- Unification of two fresh types no longer binds them together.
- Replaced uses of raw
emplace
withemplaceType
to catch cyclic bound types when they are created. SetIndexerConstraint
is blocked until the indexer result type is not blocked.- Fix a case where a blocked type got past the constraint solver.
- Searching for free types should no longer traverse into
ClassType
s. - Fix a corner case that could result in the non-testable type
~{}
. - Fix incorrect flagging when
any
was a parameter of some checked function in nonstrict type checker. IterableConstraint
now consider tables without__iter
to be iterables.
Native Code Generation
- Improve register type info lookup by program counter.
- Generate type information for locals and upvalues
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: James McNellis [email protected]
Co-authored-by: Vighnesh Vijay [email protected]
Co-authored-by: Vyacheslav Egorov [email protected]