]> git.lizzy.rs Git - rust.git/blob - tests/ui/lint/unused/lint-unused-variables.rs
Auto merge of #106989 - clubby789:is-zero-num, r=scottmcm
[rust.git] / tests / ui / lint / unused / lint-unused-variables.rs
1 // compile-flags: --cfg something
2 // edition:2018
3
4 #![feature(async_closure)]
5 #![deny(unused_variables)]
6
7 async fn foo_async(
8     a: i32,
9     //~^ ERROR unused variable: `a`
10     #[allow(unused_variables)] b: i32,
11 ) {}
12 fn foo(
13     #[allow(unused_variables)] a: i32,
14     b: i32,
15     //~^ ERROR unused variable: `b`
16 ) {}
17
18 struct RefStruct {}
19 impl RefStruct {
20     async fn bar_async(
21         &self,
22         a: i32,
23         //~^ ERROR unused variable: `a`
24         #[allow(unused_variables)] b: i32,
25     ) {}
26     fn bar(
27         &self,
28         #[allow(unused_variables)] a: i32,
29         b: i32,
30         //~^ ERROR unused variable: `b`
31     ) {}
32     fn issue_64682_associated_fn(
33         #[allow(unused_variables)] a: i32,
34         b: i32,
35         //~^ ERROR unused variable: `b`
36     ) {}
37 }
38 trait RefTrait {
39     fn bar(
40         &self,
41         #[allow(unused_variables)] a: i32,
42         b: i32,
43         //~^ ERROR unused variable: `b`
44     ) {}
45     fn issue_64682_associated_fn(
46         #[allow(unused_variables)] a: i32,
47         b: i32,
48         //~^ ERROR unused variable: `b`
49     ) {}
50 }
51 impl RefTrait for RefStruct {
52     fn bar(
53         &self,
54         #[allow(unused_variables)] a: i32,
55         b: i32,
56         //~^ ERROR unused variable: `b`
57     ) {}
58     fn issue_64682_associated_fn(
59         #[allow(unused_variables)] a: i32,
60         b: i32,
61         //~^ ERROR unused variable: `b`
62     ) {}
63 }
64
65 fn main() {
66     let _: fn(_, _) = foo;
67     let a = async move |
68         a: i32,
69         //~^ ERROR unused variable: `a`
70         #[allow(unused_variables)] b: i32,
71     | {};
72     let b = |
73         #[allow(unused_variables)] a: i32,
74         b: i32,
75         //~^ ERROR unused variable: `b`
76     | {};
77     let _ = a(1, 2);
78     let _ = b(1, 2);
79 }