mirror of
https://github.com/luau-lang/luau.git
synced 2025-04-19 11:13:49 +01:00
### What's new? * Removed new `table.move` optimization because of correctness problems. ### New Type Solver * Improved error messages for type families to describe what's wrong in more detail, and ideally without using the term `type family` at all. * Change `boolean` and `string` singletons in type checking to report errors to the user when they've gotten an impossible type (indicating a type error from their context). * Split debugging flags for type family reduction (`DebugLuauLogTypeFamilies`) from general solver logging (`DebugLuauLogSolver`). * Improve type simplification to support patterns like `(number | string) | (string | number)` becoming `number | string`. ### Native Code Generation * Use templated `luaV_doarith` to speedup vector operation fallbacks. * Various small changes to better support arm64 on Windows. ### Internal Contributors Co-authored-by: Aaron Weiss <aaronweiss@roblox.com> Co-authored-by: Andy Friesen <afriesen@roblox.com> Co-authored-by: James McNellis <jmcnellis@roblox.com> Co-authored-by: Vighnesh Vijay <vvijay@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> |
||
---|---|---|
.. | ||
Anyification.cpp | ||
ApplyTypeFunction.cpp | ||
AstJsonEncoder.cpp | ||
AstQuery.cpp | ||
Autocomplete.cpp | ||
BuiltinDefinitions.cpp | ||
Clone.cpp | ||
Constraint.cpp | ||
ConstraintGenerator.cpp | ||
ConstraintSolver.cpp | ||
DataFlowGraph.cpp | ||
DcrLogger.cpp | ||
Def.cpp | ||
Differ.cpp | ||
EmbeddedBuiltinDefinitions.cpp | ||
Error.cpp | ||
Frontend.cpp | ||
Generalization.cpp | ||
GlobalTypes.cpp | ||
Instantiation.cpp | ||
Instantiation2.cpp | ||
IostreamHelpers.cpp | ||
JsonEmitter.cpp | ||
Linter.cpp | ||
LValue.cpp | ||
Module.cpp | ||
NonStrictTypeChecker.cpp | ||
Normalize.cpp | ||
OverloadResolution.cpp | ||
Quantify.cpp | ||
Refinement.cpp | ||
RequireTracer.cpp | ||
Scope.cpp | ||
Simplify.cpp | ||
Substitution.cpp | ||
Subtyping.cpp | ||
Symbol.cpp | ||
TableLiteralInference.cpp | ||
ToDot.cpp | ||
TopoSortStatements.cpp | ||
ToString.cpp | ||
Transpiler.cpp | ||
TxnLog.cpp | ||
Type.cpp | ||
TypeArena.cpp | ||
TypeAttach.cpp | ||
TypeChecker2.cpp | ||
TypedAllocator.cpp | ||
TypeFamily.cpp | ||
TypeFamilyReductionGuesser.cpp | ||
TypeInfer.cpp | ||
TypeOrPack.cpp | ||
TypePack.cpp | ||
TypePath.cpp | ||
TypeUtils.cpp | ||
Unifiable.cpp | ||
Unifier.cpp | ||
Unifier2.cpp |