Skip to content

fix(ty): aggregate constraints - #2

Merged
andogq merged 12 commits into
mainfrom
fix/aggregate-constraints
Jan 11, 2026
Merged

fix(ty): aggregate constraints#2
andogq merged 12 commits into
mainfrom
fix/aggregate-constraints

Conversation

@andogq

@andogq andogq commented Jan 11, 2026

Copy link
Copy Markdown
Owner
  • Add TypeVar::Field to reference a field in another variable
  • Add NonConcreteType::Tuple
  • Alter Constraints::Aggregate to count the number of fields, rather than the specific TypeVarIds
  • General updates to solver

andogq added 12 commits January 7, 2026 19:25
- also add `simplify_solution`
Assert that if the body yields a value, it must match the type of the
function return value.
Allows for merging the fields of tuples before they're fully resolved.
`TypeVar::Aggregate` now only contains the number of fields it contains,
rather than the `TypeVarId`s of each field. Instead, `Solver` merges any
tuple-like solution with `TypeVar::Field` to ensure they're in sync.
@andogq
andogq merged commit 1464446 into main Jan 11, 2026
3 checks passed
@andogq
andogq deleted the fix/aggregate-constraints branch January 11, 2026 07:30
@codecov-commenter

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

❌ Patch coverage is 96.67590% with 12 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
src/passes/thir_gen.rs 96.92% 4 Missing ⚠️
src/ty/constraints.rs 90.90% 4 Missing ⚠️
src/ty/solver.rs 97.94% 3 Missing ⚠️
src/passes/mir_gen.rs 75.00% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants