summaryrefslogtreecommitdiffstats
path: root/tests/ui/suggestions/ignore-nested-field-binding.fixed
blob: 1dc44838e8bb0d76c2e151bc7d4fa6e2eb9dfcfb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Regression test for #88403, where prefixing with an underscore was
// erroneously suggested for a nested shorthand struct field binding.

// run-rustfix
#![allow(unused)]
#![forbid(unused_variables)]

struct Inner { i: i32 }
struct Outer { o: Inner }

fn foo(Outer { o: Inner { i: _ } }: Outer) {}
//~^ ERROR: unused variable: `i`
//~| HELP: try ignoring the field

fn main() {
    let s = Outer { o: Inner { i: 42 } };
    let Outer { o: Inner { i: _ } } = s;
    //~^ ERROR: unused variable: `i`
    //~| HELP: try ignoring the field
}