luau/Ast/include/Luau
Vighnesh-V 77642988c2
Sync to upstream/release/661 (#1664)
# General
- Additional logging enabled for fragment autocomplete.

## Roundtrippable AST
- Add a new `AstNode`, `AstGenericType`
- Retain source information for `AstExprTypeAssertion`
## New Type Solver
- New non-strict mode will report unknown symbol errors, e.g
```
foo = 5
local wrong1 = foob <- issue warning
```
- Fixed a bug where new non-strict mode failed to visit large parts of
the program.
- We now infer the types of unnanotated local variables in statements
with multiple assignments, e.g. `local x: "a", y, z = "a", f()`
- Fixed bugs in constraint dispatch ordering.
- Fixed a bug that caused an infinite loop between `Subtyping`,
`OverloadResolution`, and `Type Function Reduction`, by preventing calls
to `Type Function Reduction` being re-entrant.
- Fixed a crash in bidirectional type inference caused by asserting read
and write properties on a type that was readonly.

## Runtime
- Fix a stack overflow caused by `luaL_checkstack` consuming stack space
even if the function fails to reserve memory.
- Using '%c' with a 0 value in Luau string.format will append a '\0'.
Resolves https://github.com/luau-lang/luau/issues/1650

## Miscellaneous
- Miscellaneous small bugfixes for the new solver.

**Full Changelog**:
https://github.com/luau-lang/luau/compare/0.660...0.661
----
Co-authored-by: Ariel Weiss <aaronweiss@roblox.com>
Co-authored-by: Hunter Goldstein <hgoldstein@roblox.com>
Co-authored-by: Talha Pathan <tpathan@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>

---------

Co-authored-by: Hunter Goldstein <hgoldstein@roblox.com>
Co-authored-by: Varun Saini <61795485+vrn-sn@users.noreply.github.com>
Co-authored-by: Alexander Youngblood <ayoungblood@roblox.com>
Co-authored-by: Menarul Alam <malam@roblox.com>
Co-authored-by: Aviral Goel <agoel@roblox.com>
2025-02-14 13:57:46 -08:00
..
Allocator.h Sync to upstream/release/656 (#1612) 2025-01-10 11:34:39 -08:00
Ast.h Sync to upstream/release/661 (#1664) 2025-02-14 13:57:46 -08:00
Confusables.h Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
Cst.h Sync to upstream/release/661 (#1664) 2025-02-14 13:57:46 -08:00
Lexer.h Sync to upstream/release/660 (#1643) 2025-02-07 16:17:11 -08:00
Location.h Sync to upstream/release/656 (#1612) 2025-01-10 11:34:39 -08:00
ParseOptions.h Sync to upstream/release/660 (#1643) 2025-02-07 16:17:11 -08:00
Parser.h Sync to upstream/release/661 (#1664) 2025-02-14 13:57:46 -08:00
ParseResult.h Sync to upstream/release/660 (#1643) 2025-02-07 16:17:11 -08:00
StringUtils.h Sync to upstream/release/549 (#707) 2022-10-14 12:48:41 -07:00
TimeTrace.h Sync to upstream/release/645 (#1440) 2024-09-27 11:58:21 -07:00