[Typed throws] Cleanups for the caught error type computation #70397
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.
Unify
ThrownTypeRequest
andDoCatchExplicitThrownTypeRequest
. These two requests are effectively doing the same thing to two different cases withinCatchNode
. Unify the requests into a singlerequest,
ExplicitCaughtTypeRequest
, which operates on a CatchNode.This also moves the logic for closures with explicitly-specified throws
clauses into the same request, taking it out of the constraint system.
Also unify some of the computation of the "caught" type for a
CatchNode
, fixing an issue whereexplicitly-specified types on a
do..catch
weren't getting used within a closure.