We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
unnecessary_literal_unwrap
1 parent cd1c853 commit 0b5dac0Copy full SHA for 0b5dac0
clippy_lints/src/methods/mod.rs
@@ -4000,9 +4000,6 @@ impl Methods {
4000
unnecessary_literal_unwrap::check(cx, expr, recv, name, args);
4001
unwrap_used::check(cx, expr, recv, false, self.allow_unwrap_in_tests);
4002
},
4003
- ("unwrap_unchecked", []) => {
4004
- unnecessary_literal_unwrap::check(cx, expr, recv, name, args);
4005
- }
4006
("unwrap_err", []) => {
4007
4008
unwrap_used::check(cx, expr, recv, true, self.allow_unwrap_in_tests);
@@ -4022,7 +4019,7 @@ impl Methods {
4022
4019
}
4023
4020
4024
4021
4025
- ("unwrap_or_default", []) => {
+ ("unwrap_or_default" | "unwrap_unchecked" | "unwrap_err_unchecked", []) => {
4026
4027
4028
("unwrap_or_else", [u_arg]) => {
clippy_lints/src/methods/unnecessary_literal_unwrap.rs
@@ -67,7 +67,7 @@ pub(super) fn check(
67
(expr.span.with_hi(args[0].span.lo()), "panic!(".to_string()),
68
(expr.span.with_lo(args[0].span.hi()), ")".to_string()),
69
]),
70
- ("Some" | "Ok", "unwrap_unchecked", _) => {
+ ("Some" | "Ok", "unwrap_unchecked", _) | ("Err", "unwrap_err_unchecked", _) => {
71
let mut suggs = vec![
72
(recv.span.with_hi(call_args[0].span.lo()), String::new()),
73
(expr.span.with_lo(call_args[0].span.hi()), String::new()),
tests/ui/unnecessary_literal_unwrap.fixed
@@ -85,6 +85,7 @@ fn unwrap_unchecked() {
85
let _ = 1;
86
let _ = unsafe { 1 + *(&1 as *const i32) };
87
let _ = 1 + 1;
88
+ let _ = 123;
89
90
91
fn main() {
tests/ui/unnecessary_literal_unwrap.rs
let _ = unsafe { Ok::<_, ()>(1).unwrap_unchecked() };
let _ = unsafe { Ok::<_, ()>(1).unwrap_unchecked() + *(&1 as *const i32) };
let _ = unsafe { Ok::<_, ()>(1).unwrap_unchecked() } + 1;
+ let _ = unsafe { Err::<(), i32>(123).unwrap_err_unchecked() };
tests/ui/unnecessary_literal_unwrap.stderr
@@ -481,5 +481,17 @@ LL - let _ = unsafe { Ok::<_, ()>(1).unwrap_unchecked() } + 1;
481
LL + let _ = 1 + 1;
482
|
483
484
-error: aborting due to 42 previous errors
+error: used `unwrap_err_unchecked()` on `Err` value
485
+ --> $DIR/unnecessary_literal_unwrap.rs:88:22
486
+ |
487
+LL | let _ = unsafe { Err::<(), i32>(123).unwrap_err_unchecked() };
488
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
489
490
+help: remove the `Err` and `unwrap_err_unchecked()`
491
492
+LL - let _ = unsafe { Err::<(), i32>(123).unwrap_err_unchecked() };
493
+LL + let _ = 123;
494
495
+
496
+error: aborting due to 43 previous errors
497
0 commit comments