diff options
| author | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2025-08-01 21:55:11 +0300 |
|---|---|---|
| committer | Vadim Petrochenkov <vadim.petrochenkov@gmail.com> | 2025-09-25 20:36:14 +0300 |
| commit | f89660e4aa018401ca993f0df190e5f4c4a6799b (patch) | |
| tree | 6dcf4590f3e62fb704208b16306abbc339d8823c /tests/ui/resolve | |
| parent | 6f34f4ee074ce0affc7bbf4e2c835f66cd576f13 (diff) | |
| download | rust-f89660e4aa018401ca993f0df190e5f4c4a6799b.tar.gz rust-f89660e4aa018401ca993f0df190e5f4c4a6799b.zip | |
resolve: Do not finalize shadowed bindings
I.e. do not mark them as used, or non-speculative loaded, or similar. Previously they were sometimes finalized during early resolution, causing issues like https://github.com/rust-lang/rust/pull/144793#issuecomment-3168108005.
Diffstat (limited to 'tests/ui/resolve')
| -rw-r--r-- | tests/ui/resolve/unused-macro-import.rs | 13 | ||||
| -rw-r--r-- | tests/ui/resolve/unused-macro-import.stderr | 14 |
2 files changed, 27 insertions, 0 deletions
diff --git a/tests/ui/resolve/unused-macro-import.rs b/tests/ui/resolve/unused-macro-import.rs new file mode 100644 index 00000000000..e85f7a43993 --- /dev/null +++ b/tests/ui/resolve/unused-macro-import.rs @@ -0,0 +1,13 @@ +//@ check-pass + +#![warn(unused_imports)] + +#[macro_export] +macro_rules! mac { () => {} } + +fn main() { + // Unused, `mac` as `macro_rules!` is already in scope and has higher priority. + use crate::mac; //~ WARN unused import: `crate::mac` + + mac!(); +} diff --git a/tests/ui/resolve/unused-macro-import.stderr b/tests/ui/resolve/unused-macro-import.stderr new file mode 100644 index 00000000000..5f9813808a0 --- /dev/null +++ b/tests/ui/resolve/unused-macro-import.stderr @@ -0,0 +1,14 @@ +warning: unused import: `crate::mac` + --> $DIR/unused-macro-import.rs:10:9 + | +LL | use crate::mac; + | ^^^^^^^^^^ + | +note: the lint level is defined here + --> $DIR/unused-macro-import.rs:3:9 + | +LL | #![warn(unused_imports)] + | ^^^^^^^^^^^^^^ + +warning: 1 warning emitted + |
