38d4ac7cea
Discussion previously happened in https://github.com/rust-lang/rust/pull/43498
283 lines
8.6 KiB
Plaintext
283 lines
8.6 KiB
Plaintext
error: you don't need to add `&` to all patterns
|
|
--> $DIR/matches.rs:11:9
|
|
|
|
|
LL | / match v {
|
|
LL | | &Some(v) => println!("{:?}", v),
|
|
LL | | &None => println!("none"),
|
|
LL | | }
|
|
| |_________^
|
|
|
|
|
= note: `-D clippy::match-ref-pats` implied by `-D warnings`
|
|
help: instead of prefixing all patterns with `&`, you can dereference the expression
|
|
|
|
|
LL | match *v {
|
|
LL | Some(v) => println!("{:?}", v),
|
|
LL | None => println!("none"),
|
|
|
|
|
|
|
error: you don't need to add `&` to all patterns
|
|
--> $DIR/matches.rs:22:5
|
|
|
|
|
LL | / match tup {
|
|
LL | | &(v, 1) => println!("{}", v),
|
|
LL | | _ => println!("none"),
|
|
LL | | }
|
|
| |_____^
|
|
help: instead of prefixing all patterns with `&`, you can dereference the expression
|
|
|
|
|
LL | match *tup {
|
|
LL | (v, 1) => println!("{}", v),
|
|
|
|
|
|
|
error: you don't need to add `&` to both the expression and the patterns
|
|
--> $DIR/matches.rs:28:5
|
|
|
|
|
LL | / match &w {
|
|
LL | | &Some(v) => println!("{:?}", v),
|
|
LL | | &None => println!("none"),
|
|
LL | | }
|
|
| |_____^
|
|
help: try
|
|
|
|
|
LL | match w {
|
|
LL | Some(v) => println!("{:?}", v),
|
|
LL | None => println!("none"),
|
|
|
|
|
|
|
error: you don't need to add `&` to all patterns
|
|
--> $DIR/matches.rs:39:5
|
|
|
|
|
LL | / if let &None = a {
|
|
LL | | println!("none");
|
|
LL | | }
|
|
| |_____^
|
|
help: instead of prefixing all patterns with `&`, you can dereference the expression
|
|
|
|
|
LL | if let None = *a {
|
|
| ^^^^ ^^
|
|
|
|
error: you don't need to add `&` to both the expression and the patterns
|
|
--> $DIR/matches.rs:44:5
|
|
|
|
|
LL | / if let &None = &b {
|
|
LL | | println!("none");
|
|
LL | | }
|
|
| |_____^
|
|
help: try
|
|
|
|
|
LL | if let None = b {
|
|
| ^^^^ ^
|
|
|
|
error: Err(_) will match all errors, maybe not a good idea
|
|
--> $DIR/matches.rs:55:9
|
|
|
|
|
LL | Err(_) => panic!("err"),
|
|
| ^^^^^^
|
|
|
|
|
= note: `-D clippy::match-wild-err-arm` implied by `-D warnings`
|
|
= note: to remove this warning, match each error separately or use unreachable macro
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:54:18
|
|
|
|
|
LL | Ok(_) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
= note: `-D clippy::match-same-arms` implied by `-D warnings`
|
|
note: same as this
|
|
--> $DIR/matches.rs:53:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
note: consider refactoring into `Ok(3) | Ok(_)`
|
|
--> $DIR/matches.rs:53:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: Err(_) will match all errors, maybe not a good idea
|
|
--> $DIR/matches.rs:61:9
|
|
|
|
|
LL | Err(_) => panic!(),
|
|
| ^^^^^^
|
|
|
|
|
= note: to remove this warning, match each error separately or use unreachable macro
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:60:18
|
|
|
|
|
LL | Ok(_) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: same as this
|
|
--> $DIR/matches.rs:59:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
note: consider refactoring into `Ok(3) | Ok(_)`
|
|
--> $DIR/matches.rs:59:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: Err(_) will match all errors, maybe not a good idea
|
|
--> $DIR/matches.rs:67:9
|
|
|
|
|
LL | Err(_) => {
|
|
| ^^^^^^
|
|
|
|
|
= note: to remove this warning, match each error separately or use unreachable macro
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:66:18
|
|
|
|
|
LL | Ok(_) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: same as this
|
|
--> $DIR/matches.rs:65:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
note: consider refactoring into `Ok(3) | Ok(_)`
|
|
--> $DIR/matches.rs:65:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:75:18
|
|
|
|
|
LL | Ok(_) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: same as this
|
|
--> $DIR/matches.rs:74:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
note: consider refactoring into `Ok(3) | Ok(_)`
|
|
--> $DIR/matches.rs:74:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:82:18
|
|
|
|
|
LL | Ok(_) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: same as this
|
|
--> $DIR/matches.rs:81:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
note: consider refactoring into `Ok(3) | Ok(_)`
|
|
--> $DIR/matches.rs:81:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:88:18
|
|
|
|
|
LL | Ok(_) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: same as this
|
|
--> $DIR/matches.rs:87:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
note: consider refactoring into `Ok(3) | Ok(_)`
|
|
--> $DIR/matches.rs:87:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:94:18
|
|
|
|
|
LL | Ok(_) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: same as this
|
|
--> $DIR/matches.rs:93:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
note: consider refactoring into `Ok(3) | Ok(_)`
|
|
--> $DIR/matches.rs:93:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:117:29
|
|
|
|
|
LL | (Ok(_), Some(x)) => println!("ok {}", x),
|
|
| ^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
note: same as this
|
|
--> $DIR/matches.rs:116:29
|
|
|
|
|
LL | (Ok(x), Some(_)) => println!("ok {}", x),
|
|
| ^^^^^^^^^^^^^^^^^^^^
|
|
note: consider refactoring into `(Ok(x), Some(_)) | (Ok(_), Some(x))`
|
|
--> $DIR/matches.rs:116:29
|
|
|
|
|
LL | (Ok(x), Some(_)) => println!("ok {}", x),
|
|
| ^^^^^^^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: this `match` has identical arm bodies
|
|
--> $DIR/matches.rs:132:18
|
|
|
|
|
LL | Ok(_) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
|
note: same as this
|
|
--> $DIR/matches.rs:131:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
note: consider refactoring into `Ok(3) | Ok(_)`
|
|
--> $DIR/matches.rs:131:18
|
|
|
|
|
LL | Ok(3) => println!("ok"),
|
|
| ^^^^^^^^^^^^^^
|
|
= note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
|
|
|
|
error: use as_ref() instead
|
|
--> $DIR/matches.rs:141:33
|
|
|
|
|
LL | let borrowed: Option<&()> = match owned {
|
|
| _________________________________^
|
|
LL | | None => None,
|
|
LL | | Some(ref v) => Some(v),
|
|
LL | | };
|
|
| |_____^ help: try this: `owned.as_ref()`
|
|
|
|
|
= note: `-D clippy::match-as-ref` implied by `-D warnings`
|
|
|
|
error: use as_mut() instead
|
|
--> $DIR/matches.rs:147:39
|
|
|
|
|
LL | let borrow_mut: Option<&mut ()> = match mut_owned {
|
|
| _______________________________________^
|
|
LL | | None => None,
|
|
LL | | Some(ref mut v) => Some(v),
|
|
LL | | };
|
|
| |_____^ help: try this: `mut_owned.as_mut()`
|
|
|
|
error: aborting due to 19 previous errors
|
|
|