Skip to content

0.691

Choose a tag to compare

@github-actions github-actions released this 15 Sep 20:55
ae59a0e

New Type Solver

  • Fixed #1983 by adding additional context to permit some expressions otherwise not allowed
  • We now skip issuing CheckedFunctionWarnings on use of unreduced type functions
  • Fix gcc compile error
  • Handle expressions a == b and a ~= b more efficiently
  • Subtyping now correctly handles generics over unions and intersections in cases such as
local function a<T>(arr: { T }) end

a({ 'one', 'two' })
  • Rearrange unification cases to avoid free type generalization to never
  • Improve generic bounds mismatch error message
  • Fix Ancestry bug in visitor for incomplete repeat blocks such as
local t = {}
function t:Foo() end

repeat
  t:|
  • Support autocomplete for attributes

Native Codegen

  • Unwind info has support on Android
  • Introduced a separate ctypeof function which does not constant-fold for vector arguments.
  • We now perform string concatenation at compile time if possible (there is a known issue with the optimization that we will address next week)
  • Make vector.lerp and math.lerp more efficient with FMA
  • Record STORE_SPLIT_TVALUE as a potential restore operation to reduce number of spills to stack
  • When native execution is disabled, we now mark the call frame as not executing natively, making resumption safer

Co-authored-by: Andy Friesen afriesen@roblox.com
Co-authored-by: Annie Tang annietang@roblox.com
Co-authored-by: Hunter Goldstein hgoldstein@roblox.com
Co-authored-by: Ilya Rezvov irezvov@roblox.com
Co-authored-by: Menarul Alam malam@roblox.com
Co-authored-by: Sora Kanosue skanosue@roblox.com
Co-authored-by: Varun Saini vsaini@roblox.com
Co-authored-by: Vighnesh Vijay vvijay@roblox.com
Co-authored-by: Vyacheslav Egorov vegorov@roblox.com