Test for #[must_use] on traits
This commit is contained in:
parent
cb5520bc48
commit
122886842e
|
@ -0,0 +1,22 @@
|
|||
#![deny(unused_must_use)]
|
||||
|
||||
#[must_use]
|
||||
trait Critical {}
|
||||
|
||||
trait NotSoCritical {}
|
||||
|
||||
trait DecidedlyUnimportant {}
|
||||
|
||||
struct Anon;
|
||||
|
||||
impl Critical for Anon {}
|
||||
impl NotSoCritical for Anon {}
|
||||
impl DecidedlyUnimportant for Anon {}
|
||||
|
||||
fn get_critical() -> impl NotSoCritical + Critical + DecidedlyUnimportant {
|
||||
Anon {}
|
||||
}
|
||||
|
||||
fn main() {
|
||||
get_critical(); //~ ERROR unused implementer of `Critical` that must be used
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
error: unused implementer of `Critical` that must be used
|
||||
--> $DIR/must_use-trait.rs:21:5
|
||||
|
|
||||
LL | get_critical(); //~ ERROR unused implementer of `Critical` that must be used
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: lint level defined here
|
||||
--> $DIR/must_use-trait.rs:1:9
|
||||
|
|
||||
LL | #![deny(unused_must_use)]
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to previous error
|
||||
|
Loading…
Reference in New Issue