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

Don't consider locals to shadow inner items' generics #129270

Merged
merged 1 commit into from
Aug 21, 2024

Conversation

compiler-errors
Copy link
Member

We don't want to consider the bindings from a RibKind::Module itself, because for an inner item that module will contain the local bindings from the function body or wherever else the inner item is being defined.

Fixes #129265

r? petrochenkov

@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 Aug 19, 2024
@petrochenkov
Copy link
Contributor

Could you add a test case from #129265 (comment)?

@petrochenkov
Copy link
Contributor

This is purely a regression fix, not a language change, right?
r=me assuming that (with the test).
@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 19, 2024
@compiler-errors
Copy link
Member Author

🤦

I thought I added a test. Probably forgot to git add it.

Yes, this is purely a fix.

@compiler-errors compiler-errors force-pushed the inner-generics-shadowing branch from cc6888d to 78d0e08 Compare August 19, 2024 21:24
@petrochenkov
Copy link
Contributor

@bors r+ rollup

@bors
Copy link
Contributor

bors commented Aug 20, 2024

📌 Commit 78d0e08 has been approved by petrochenkov

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-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Aug 20, 2024
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Aug 20, 2024
…dowing, r=petrochenkov

Don't consider locals to shadow inner items' generics

We don't want to consider the bindings from a `RibKind::Module` itself, because for an inner item that module will contain the local bindings from the function body or wherever else the inner item is being defined.

Fixes rust-lang#129265

r? petrochenkov
bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 20, 2024
…llaumeGomez

Rollup of 6 pull requests

Successful merges:

 - rust-lang#129270 (Don't consider locals to shadow inner items' generics)
 - rust-lang#129277 (Update annotate-snippets to 0.11)
 - rust-lang#129308 (fix: simple typo in compiler directory)
 - rust-lang#129309 (ctfe: make CompileTimeInterpCx type alias public)
 - rust-lang#129314 (fix a broken link in `mir/mod.rs`)
 - rust-lang#129318 (Remove unneeded conversion to `DefId` for `ExtraInfo`)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 20, 2024
…iaskrgr

Rollup of 9 pull requests

Successful merges:

 - rust-lang#128662 (Lint on tail expr drop order change in Edition 2024)
 - rust-lang#128932 (skip updating when external binding is existed)
 - rust-lang#129270 (Don't consider locals to shadow inner items' generics)
 - rust-lang#129277 (Update annotate-snippets to 0.11)
 - rust-lang#129294 (Stabilize `iter::repeat_n`)
 - rust-lang#129308 (fix: simple typo in compiler directory)
 - rust-lang#129309 (ctfe: make CompileTimeInterpCx type alias public)
 - rust-lang#129314 (fix a broken link in `mir/mod.rs`)
 - rust-lang#129318 (Remove unneeded conversion to `DefId` for `ExtraInfo`)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 21, 2024
…llaumeGomez

Rollup of 6 pull requests

Successful merges:

 - rust-lang#129270 (Don't consider locals to shadow inner items' generics)
 - rust-lang#129277 (Update annotate-snippets to 0.11)
 - rust-lang#129308 (fix: simple typo in compiler directory)
 - rust-lang#129309 (ctfe: make CompileTimeInterpCx type alias public)
 - rust-lang#129314 (fix a broken link in `mir/mod.rs`)
 - rust-lang#129318 (Remove unneeded conversion to `DefId` for `ExtraInfo`)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request Aug 21, 2024
…iaskrgr

Rollup of 9 pull requests

Successful merges:

 - rust-lang#128662 (Lint on tail expr drop order change in Edition 2024)
 - rust-lang#128932 (skip updating when external binding is existed)
 - rust-lang#129270 (Don't consider locals to shadow inner items' generics)
 - rust-lang#129277 (Update annotate-snippets to 0.11)
 - rust-lang#129294 (Stabilize `iter::repeat_n`)
 - rust-lang#129308 (fix: simple typo in compiler directory)
 - rust-lang#129309 (ctfe: make CompileTimeInterpCx type alias public)
 - rust-lang#129314 (fix a broken link in `mir/mod.rs`)
 - rust-lang#129318 (Remove unneeded conversion to `DefId` for `ExtraInfo`)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit d502b1c into rust-lang:master Aug 21, 2024
6 checks passed
@rustbot rustbot added this to the 1.82.0 milestone Aug 21, 2024
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Aug 21, 2024
Rollup merge of rust-lang#129270 - compiler-errors:inner-generics-shadowing, r=petrochenkov

Don't consider locals to shadow inner items' generics

We don't want to consider the bindings from a `RibKind::Module` itself, because for an inner item that module will contain the local bindings from the function body or wherever else the inner item is being defined.

Fixes rust-lang#129265

r? petrochenkov
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.

[E0403] False positive generated for implicit future type
4 participants