File tree 2 files changed +53
-0
lines changed
2 files changed +53
-0
lines changed Original file line number Diff line number Diff line change
1
+ // Test for interaction between #[automatically_derived] attribute used by
2
+ // built-in derives and lints generated by liveness pass.
3
+ //
4
+ // edition:2018
5
+ // check-pass
6
+ #![ warn( unused) ]
7
+
8
+ pub trait T : Sized {
9
+ const N : usize ;
10
+ fn t ( & self ) -> Self ;
11
+ }
12
+
13
+ impl T for u32 {
14
+ const N : usize = {
15
+ let a = 0 ; // FIXME should warn about unused variable
16
+ 4
17
+ } ;
18
+
19
+ fn t ( & self ) -> Self {
20
+ let b = 16 ; //~ WARN unused variable: `b`
21
+ 0
22
+ }
23
+ }
24
+
25
+ #[ automatically_derived]
26
+ impl T for i32 {
27
+ const N : usize = {
28
+ let c = 0 ;
29
+ 4
30
+ } ;
31
+
32
+ fn t ( & self ) -> Self {
33
+ let d = 17 ;
34
+ 0
35
+ }
36
+ }
37
+
38
+ fn main ( ) { }
Original file line number Diff line number Diff line change
1
+ warning: unused variable: `b`
2
+ --> $DIR/liveness-derive.rs:20:13
3
+ |
4
+ LL | let b = 16;
5
+ | ^ help: if this is intentional, prefix it with an underscore: `_b`
6
+ |
7
+ note: the lint level is defined here
8
+ --> $DIR/liveness-derive.rs:6:9
9
+ |
10
+ LL | #![warn(unused)]
11
+ | ^^^^^^
12
+ = note: `#[warn(unused_variables)]` implied by `#[warn(unused)]`
13
+
14
+ warning: 1 warning emitted
15
+
You can’t perform that action at this time.
0 commit comments