Pass InferCtxt
to DropRangeVisitor
so we can resolve vars
#104753
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The types that we encounter in the
TypeckResults
that we pass to theDropRangeVisitor
are not yet fully resolved, since that only happens in writeback after type checking is complete.Instead, pass down the whole
InferCtxt
so that we can resolve any inference vars that have been constrained since they were written into the results. This is similar to how theMemCategorizationContext
in theExprUseVisitor
also needs to pass down both typeck results and the inference context.Fixes an ICE mentioned in this comment: #104382 (comment)