luau/Compiler/src
Andy Friesen 543de6e939
Sync to upstream/release/646 (#1458)
# General Updates

* Fix some cases where documentation symbols would not be available when
mouseovering at certain positions in the code
* Scaffolding to help embedders have more control over how `typeof(x)`
refines types
* Refinements to require-by-string semantics. See
https://github.com/luau-lang/rfcs/pull/56 for details.
* Fix for https://github.com/luau-lang/luau/issues/1405

# New Solver

* Fix many crashes (thanks you for your bug reports!)
* Type functions can now call each other
* Type functions all evaluate in a single VM. This should improve
typechecking performance and reduce memory use.
* `export type function` is now forbidden and fails with a clear error
message
* Type functions that access locals in the surrounding environment are
now properly a parse error
* You can now use `:setindexer(types.never, types.never)` to delete an
indexer from a table type.

# Internal Contributors

Co-authored-by: Aaron Weiss <aaronweiss@roblox.com>
Co-authored-by: Hunter Goldstein <hgoldstein@roblox.com>
Co-authored-by: Varun Saini <vsaini@roblox.com>
Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com>
2024-10-04 11:29:55 -07:00
..
BuiltinFolding.cpp Sync to upstream/release/613 (#1167) 2024-02-15 18:04:39 -08:00
BuiltinFolding.h Sync to upstream/release/589 (#1000) 2023-08-04 12:18:54 -07:00
Builtins.cpp Sync to upstream/release/637 (#1354) 2024-08-02 07:30:04 -07:00
Builtins.h Sync to upstream/release/637 (#1354) 2024-08-02 07:30:04 -07:00
BytecodeBuilder.cpp Sync to upstream/release/641 (#1382) 2024-08-30 13:16:51 -07:00
Compiler.cpp Sync to upstream/release/646 (#1458) 2024-10-04 11:29:55 -07:00
ConstantFolding.cpp Sync to upstream/release/637 (#1354) 2024-08-02 07:30:04 -07:00
ConstantFolding.h Sync to upstream/release/637 (#1354) 2024-08-02 07:30:04 -07:00
CostModel.cpp Sync to upstream/release/637 (#1354) 2024-08-02 07:30:04 -07:00
CostModel.h Sync to upstream/release/536 (#592) 2022-07-14 15:52:26 -07:00
lcode.cpp Sync to upstream/release/505 (#216) 2021-11-19 08:10:07 -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/641 (#1382) 2024-08-30 13:16:51 -07:00
Types.h Sync to upstream/release/637 (#1354) 2024-08-02 07:30:04 -07:00
ValueTracking.cpp Use const char* const* over const char** (#1005) 2023-08-07 13:45:04 -07:00
ValueTracking.h Use const char* const* over const char** (#1005) 2023-08-07 13:45:04 -07:00