summaryrefslogtreecommitdiffstats
path: root/tests/ui/lint/rfc-2383-lint-reason/expect_unused_inside_impl_block.rs
blob: 1e2ff12a20624f70f760500b9fbe31415fa0ce81 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// check-pass
// incremental

#![feature(lint_reasons)]
#![warn(unused)]

struct OneUnused;
struct TwoUnused;

impl OneUnused {
    #[expect(unused)]
    fn unused() {}
}

impl TwoUnused {
    #[expect(unused)]
    fn unused1(){}

    // This unused method has `#[expect(unused)]`, so the compiler should not emit a warning.
    // This ui test was added after a regression in the compiler where it did not recognize multiple
    // `#[expect(unused)]` annotations inside of impl blocks.
    // issue 114416
    #[expect(unused)]
    fn unused2(){}
}

fn main() {
    let _ = OneUnused;
    let _ = TwoUnused;
}