luau/Compiler/src
Vighnesh-V 8863bfc950
Sync to upstream/release/686 (#1948)
## General
This week has been spent mostly on fixing bugs in incremental
autocomplete as well as making the new Type Solver more stable.

- Fixes a bug where registered "require" aliases were case-sensitive
instead of case-insensitive.
### New Type Solver
- Adjust literal sub typing logic to account for unreduced type
functions
- Implement a number of subtyping stack utilization improvements
- Emit a single error if an internal type escapes a module's interface
- Checked function errors in the New Non Strict warn about incorrect
argument use with one-indexed positions, e.g. `argument #1 was used
incorrectly` instead of `argument #0 was used incorrectly`.
- Improvements to type function reduction that let us progress further
while reducing
- Augment the generalization system to not emit duplicate constraints.
- Fix a bug where we didn't seal tables in modules that failed to
complete typechecking.

### Fragment Autocomplete
- Provide richer autocomplete suggestions inside of for loops
- Provide richer autocomplete suggestions inside of interpolated string
expressions
- Improve the quality of error messages when typing out interpolated
strings.

### Compiler
- Fixes REX encoding of extended byte registers for the x86 assembly
code generation.
- Fixes for table shape constant data encoding

---
Co-authored-by: Andy Friesen <afriesen@roblox.com>
Co-authored-by: Ariel Weiss <aaronweiss@roblox.com>
Co-authored-by: Hunter Goldstein <hgoldstein@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>
2025-08-08 10:18:16 -07:00
..
BuiltinFolding.cpp Sync to upstream/release/663 (#1699) 2025-02-28 14:42:30 -08:00
BuiltinFolding.h Sync to upstream/release/589 (#1000) 2023-08-04 12:18:54 -07:00
Builtins.cpp Sync to upstream/release/663 (#1699) 2025-02-28 14:42:30 -08:00
Builtins.h Sync to upstream/release/655 (#1563) 2024-12-13 13:02:30 -08:00
BytecodeBuilder.cpp Sync to upstream/release/656 (#1612) 2025-01-10 11:34:39 -08:00
Compiler.cpp Sync to upstream/release/686 (#1948) 2025-08-08 10:18:16 -07:00
ConstantFolding.cpp Sync to upstream/release/659 (#1637) 2025-01-31 18:58:36 -08:00
ConstantFolding.h Sync to upstream/release/655 (#1563) 2024-12-13 13:02:30 -08:00
CostModel.cpp Sync to upstream/release/684 (#1930) 2025-07-25 15:33:42 -07:00
CostModel.h Sync to upstream/release/679 (#1884) 2025-06-20 15:55:42 -07:00
lcode.cpp Sync to upstream/release/655 (#1563) 2024-12-13 13:02:30 -08:00
TableShape.cpp Sync to upstream/release/513 (#340) 2022-02-04 08:45:57 -08:00
TableShape.h Sync to upstream/release/510 (#313) 2022-01-14 08:20:09 -08:00
Types.cpp Sync to upstream/release/666 (#1747) 2025-03-21 14:43:00 -07:00
Types.h Sync to upstream/release/655 (#1563) 2024-12-13 13:02:30 -08:00
ValueTracking.cpp Sync to upstream/release/684 (#1930) 2025-07-25 15:33:42 -07:00
ValueTracking.h Use const char* const* over const char** (#1005) 2023-08-07 13:45:04 -07:00