Skip to content

Preserve placeholder ambiguity during normalization - #159964

Open
amirHdev wants to merge 2 commits into
rust-lang:mainfrom
amirHdev:fix-placeholder-certainty
Open

Preserve placeholder ambiguity during normalization#159964
amirHdev wants to merge 2 commits into
rust-lang:mainfrom
amirHdev:fix-placeholder-certainty

Conversation

@amirHdev

@amirHdev amirHdev commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

Fixes #159896

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver) labels Jul 26, 2026
@amirHdev
amirHdev marked this pull request as ready for review July 26, 2026 13:10
@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 26, 2026
@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jul 26, 2026
@rustbot

rustbot commented Jul 26, 2026

Copy link
Copy Markdown
Collaborator

r? @chenyukang

rustbot has assigned @chenyukang.
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 74 candidates
  • Random selection from 16 candidates

@chenyukang

Copy link
Copy Markdown
Member

@rustbot reroll

@rustbot rustbot assigned petrochenkov and unassigned chenyukang Jul 28, 2026
@petrochenkov

Copy link
Copy Markdown
Contributor

r? types

@rustbot rustbot added the T-types Relevant to the types team, which will review and decide on the PR/issue. label Jul 28, 2026
@rustbot rustbot assigned lcnr and unassigned petrochenkov Jul 28, 2026
@lcnr

lcnr commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

I immediately get this change, can you provide some comment/PR description for what went wrong and why this is correct

r? BoxyUwU

@rustbot

rustbot commented Jul 28, 2026

Copy link
Copy Markdown
Collaborator

Failed to set assignee to BoxyUwU: error sending request

Note: Only org members with at least the repository "read" role, users with write permissions, or people who have commented on the PR may be assigned.

@amirHdev

Copy link
Copy Markdown
Contributor Author

I immediately get this change, can you provide some comment/PR description for what went wrong and why this is correct

The problem was that the certainty of the nested goals was combined with the placeholder certainty and then dropped in the normalization path. It is fine to ignore ambiguity from nested goals there since those goals are returned to the caller. placeholder ambiguity is different because it is not reflected in the returned goals
this patch keeps the two values separate and only ignores the nested goal certainty

@lcnr lcnr assigned BoxyUwU and unassigned lcnr Jul 29, 2026
@lcnr

lcnr commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

r? lcnr makes sense

@bors r+ rollup

@rust-bors

rust-bors Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

📌 Commit ba4e2f6 has been approved by lcnr

It is now in the queue for this repository.

@rust-bors rust-bors Bot added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 29, 2026
@rust-bors rust-bors Bot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 29, 2026
jhpratt added a commit to jhpratt/rust that referenced this pull request Jul 29, 2026
…, r=lcnr

Preserve placeholder ambiguity during normalization

Fixes rust-lang#159896
@jhpratt

jhpratt commented Jul 29, 2026

Copy link
Copy Markdown
Member

@bors r- #160128 (comment)

@rust-bors rust-bors Bot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jul 29, 2026
@rust-bors rust-bors Bot removed the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Jul 29, 2026
@rust-bors

rust-bors Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

This pull request was unapproved.

This PR was contained in a rollup (#160128), which was unapproved.

View changes since this unapproval

amirHdev added 2 commits July 29, 2026 13:27
Signed-off-by: Amirhossein Akhlaghpour <m9.akhlaghpoor@gmail.com>
Signed-off-by: Amirhossein Akhlaghpour <m9.akhlaghpoor@gmail.com>
@amirHdev
amirHdev force-pushed the fix-placeholder-certainty branch from ba4e2f6 to a519b52 Compare July 29, 2026 10:25
@rustbot

rustbot commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed.

Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers.

@amirHdev

amirHdev commented Jul 29, 2026

Copy link
Copy Markdown
Contributor Author

@lcnr Rebased onto current main and fixed the ICE by restoring normalization of TypeOutlives caller bounds
@rustbot ready

@rustbot

rustbot commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Requested reviewer is already assigned to this pull request.

Please choose another assignee.

@rustbot

rustbot commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Failed to set assignee to ready: invalid assignee

Note: Only org members with at least the repository "read" role, users with write permissions, or people who have commented on the PR may be assigned.

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 29, 2026
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. T-types Relevant to the types team, which will review and decide on the PR/issue. WG-trait-system-refactor The Rustc Trait System Refactor Initiative (-Znext-solver)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ICE]: assumptions on binders: assertion failed: matches!(goals_certainty, Certainty::Yes)

7 participants