Skip to content

Remove divergence check from check_expr_array#154031

Open
TaKO8Ki wants to merge 2 commits intorust-lang:mainfrom
TaKO8Ki:fix-153695-never-pattern-array-ice
Open

Remove divergence check from check_expr_array#154031
TaKO8Ki wants to merge 2 commits intorust-lang:mainfrom
TaKO8Ki:fix-153695-never-pattern-array-ice

Conversation

@TaKO8Ki
Copy link
Member

@TaKO8Ki TaKO8Ki commented Mar 18, 2026

Fixes #153695.

check_expr_array currently assumes it should only be entered with self.diverges == Diverges::Maybe, but that assumption does not appear to hold in all valid cases. A never-pattern parameter can seed a function or closure body with inherited Diverges::Always, and exprs in that body are still typecked.

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Mar 18, 2026
@rustbot
Copy link
Collaborator

rustbot commented Mar 18, 2026

r? @davidtwco

rustbot has assigned @davidtwco.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: compiler
  • compiler expanded to 69 candidates
  • Random selection from 14 candidates

@Kivooeo
Copy link
Member

Kivooeo commented Mar 18, 2026

cc @chenyukang (as you added this check originally in #147548)

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

Labels

S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ICE]: unexpected divergence state in checking array

4 participants