Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Avoid calling report_forbidden_specialization for RPITITs #113456

Merged
merged 1 commit into from
Jul 8, 2023

Conversation

spastorino
Copy link
Member

@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 Jul 7, 2023
@spastorino spastorino changed the title Avoid calling check_specialization_validity for RPITITs Avoid calling report_forbidden_specialization for RPITITs Jul 7, 2023
Copy link
Member

@compiler-errors compiler-errors left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

r=me with one fix

@@ -722,7 +722,9 @@ pub(super) fn check_specialization_validity<'tcx>(
let result = opt_result.unwrap_or(Ok(()));

if let Err(parent_impl) = result {
report_forbidden_specialization(tcx, impl_item, parent_impl);
if !tcx.is_impl_trait_in_trait(impl_item) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please delay a bug here

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Have delayed a bug, but please would rather if you check what I did what you meant and if the english wording is fine :).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's just a bug so it's fine.

@@ -722,7 +722,9 @@ pub(super) fn check_specialization_validity<'tcx>(
let result = opt_result.unwrap_or(Ok(()));

if let Err(parent_impl) = result {
report_forbidden_specialization(tcx, impl_item, parent_impl);
if !tcx.is_impl_trait_in_trait(impl_item) {
Copy link
Member Author

@spastorino spastorino Jul 7, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've added this to avoid calling report_forbidden_specialization because all it does https://github.com/spastorino/rust/blob/518f84ba766d503cb709f753a0a498d87b942dd0/compiler/rustc_hir_analysis/src/check/mod.rs#L172-L182 is emit an error about an impl element that is not marked as default and that doesn't make any sense for a synthesized RPIT.

@compiler-errors would you prefer a code comment about this instead?

@spastorino
Copy link
Member Author

@bors r=compiler-errors rollup

@bors
Copy link
Contributor

bors commented Jul 7, 2023

📌 Commit 24326ee has been approved by compiler-errors

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jul 7, 2023
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jul 8, 2023
…er-errors

Avoid calling report_forbidden_specialization for RPITITs

Fixes rust-lang#113438

r? `@compiler-errors`
bors added a commit to rust-lang-ci/rust that referenced this pull request Jul 8, 2023
…mpiler-errors

Rollup of 8 pull requests

Successful merges:

 - rust-lang#113413 (Add needs-triage to all new issues)
 - rust-lang#113426 (Don't ICE in `resolve_bound_vars` when associated return-type bounds are in bad positions)
 - rust-lang#113427 (Remove `variances_of` on RPITIT GATs, remove its one use-case)
 - rust-lang#113441 (miri: check that assignments do not self-overlap)
 - rust-lang#113453 (Remove unused from_method from rustc_on_unimplemented)
 - rust-lang#113456 (Avoid calling report_forbidden_specialization for RPITITs)
 - rust-lang#113466 (Update cargo)
 - rust-lang#113467 (Fix comment of `fn_can_unwind`)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit cf1f8c5 into rust-lang:master Jul 8, 2023
11 checks passed
@rustbot rustbot added this to the 1.72.0 milestone Jul 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. 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: lower-impl-trait-in-trait-to-assoc-ty item_name: no name for DefPath
4 participants