luau/tests/conformance
aaron ae459a0197
Sync to upstream/release/616 (#1184)
# What's Changed

* Add a compiler hint to improve Luau memory allocation inlining

### New Type Solver

* Added a system for recommending explicit type annotations to users in
cases where we've inferred complex generic types with type families.
* Marked string library functions as `@checked` for use in new
non-strict mode.
* Fixed a bug with new non-strict mode where we would incorrectly report
arity mismatches when missing optional arguments.
* Implement an occurs check for unifications that would produce
self-recursive types.
* Fix bug where overload resolution would fail when applied to
non-overloaded functions.
* Fix bug that caused the subtyping to report an error whenever a
generic was instantiated in an invariant context.
* Fix crash caused by `SetPropConstraint` not blocking properly.

### Native Code Generation

* Implement optimization to eliminate dead stores
* Optimize vector ops for X64 when the source is computed (thanks,
@zeux!)
* Use more efficient lowering for UNM_* (thanks, @zeux!)

---

### Internal Contributors

Co-authored-by: Aaron Weiss <aaronweiss@roblox.com>
Co-authored-by: Alexander McCord <amccord@roblox.com>
Co-authored-by: Andy Friesen <afriesen@roblox.com>
Co-authored-by: David Cope <dcope@roblox.com>
Co-authored-by: Lily Brown <lbrown@roblox.com>
Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com>

---------

Co-authored-by: Alexander McCord <amccord@roblox.com>
Co-authored-by: Andy Friesen <afriesen@roblox.com>
Co-authored-by: Vighnesh <vvijay@roblox.com>
Co-authored-by: Aviral Goel <agoel@roblox.com>
Co-authored-by: David Cope <dcope@roblox.com>
Co-authored-by: Lily Brown <lbrown@roblox.com>
Co-authored-by: Vyacheslav Egorov <vegorov@roblox.com>
2024-03-08 16:47:53 -08:00
..
apicalls.lua Sync to upstream/release/571 (#895) 2023-04-07 14:01:29 -07:00
assert.lua Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
attrib.lua Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
basic.lua Sync to upstream/release/594 (#1036) 2023-09-07 17:13:49 -07:00
bitwise.lua Sync to upstream/release/602 (#1089) 2023-11-03 16:45:04 -07:00
buffers.lua Sync to upstream/release/604 (#1106) 2023-11-17 10:46:18 -08:00
calls.lua Sync to upstream/release/550 (#723) 2022-10-21 10:54:01 -07:00
clear.lua Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
closure.lua Sync to upstream/release/600 (#1076) 2023-10-20 18:10:30 -07:00
constructs.lua Sync to upstream/release/598 (#1063) 2023-10-06 12:02:32 -07:00
coroutine.lua Sync to upstream/release/514 (#372) 2022-02-17 17:18:01 -08:00
coverage.lua Sync to upstream/release/514 (#372) 2022-02-17 17:18:01 -08:00
datetime.lua Sync to upstream/release/598 (#1063) 2023-10-06 12:02:32 -07:00
debug.lua Sync to upstream/release/514 (#372) 2022-02-17 17:18:01 -08:00
debugger.lua Sync to upstream/release/576 (#928) 2023-05-12 10:50:47 -07:00
errors.lua Sync to upstream/release/550 (#723) 2022-10-21 10:54:01 -07:00
events.lua Sync to upstream/release/593 (#1024) 2023-09-01 10:58:27 -07:00
exceptions.lua Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
gc.lua Sync to upstream/release/542 (#649) 2022-08-25 14:53:50 -07:00
ifelseexpr.lua Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
interrupt.lua Sync to upstream/release/610 (#1154) 2024-01-26 19:20:56 -08:00
iter.lua Sync to upstream/release/550 (#723) 2022-10-21 10:54:01 -07:00
literals.lua Sync to upstream/release/501 (#20) 2021-11-01 14:52:34 -07:00
locals.lua Spelling (#119) 2021-11-04 09:50:46 -05:00
math.lua Sync to upstream/release/602 (#1089) 2023-11-03 16:45:04 -07:00
move.lua Sync to upstream/release/550 (#723) 2022-10-21 10:54:01 -07:00
native.lua Sync to upstream/release/616 (#1184) 2024-03-08 16:47:53 -08:00
native_types.lua Sync to upstream/release/601 (#1084) 2023-10-27 14:18:41 -07:00
ndebug_upvalues.lua Fix lua_*upvalue() when upvalue names aren't in debug info (#787) 2023-01-18 06:00:13 -08:00
pcall.lua Sync to upstream/release/600 (#1076) 2023-10-20 18:10:30 -07:00
pm.lua Spelling (#119) 2021-11-04 09:50:46 -05:00
safeenv.lua Sync to upstream/release/549 (#707) 2022-10-14 12:48:41 -07:00
sort.lua Sync to upstream/release/571 (#895) 2023-04-07 14:01:29 -07:00
strconv.lua Sync to upstream/release/608 (#1145) 2024-01-12 14:25:27 -08:00
stringinterp.lua String interpolation (#614) 2022-08-24 12:01:00 -07:00
strings.lua Sync to upstream/release/588 (#992) 2023-07-28 08:13:53 -07:00
tables.lua Sync to upstream/release/572 (#899) 2023-04-14 11:06:22 -07:00
tmerror.lua Sync to upstream/release/591 (#1012) 2023-08-18 11:15:41 -07:00
tpack.lua Sync to upstream/release/550 (#723) 2022-10-21 10:54:01 -07:00
types.lua Sync to upstream/release/544 (#669) 2022-09-08 15:14:25 -07:00
userdata.lua Sync to upstream/release/593 (#1024) 2023-09-01 10:58:27 -07:00
utf8.lua Sync to upstream/release/603 (#1097) 2023-11-10 13:10:07 -08:00
vararg.lua Sync to upstream/release/514 (#357) 2022-02-11 11:02:09 -08:00
vector.lua Sync to upstream/release/593 (#1024) 2023-09-01 10:58:27 -07:00