diff options
Diffstat (limited to 'src/test/ui/reachable/unreachable-try-pattern.rs')
| -rw-r--r-- | src/test/ui/reachable/unreachable-try-pattern.rs | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/src/test/ui/reachable/unreachable-try-pattern.rs b/src/test/ui/reachable/unreachable-try-pattern.rs deleted file mode 100644 index 23360e73f4a..00000000000 --- a/src/test/ui/reachable/unreachable-try-pattern.rs +++ /dev/null @@ -1,41 +0,0 @@ -// check-pass -#![feature(never_type, exhaustive_patterns)] -#![warn(unreachable_code)] -#![warn(unreachable_patterns)] - -enum Void {} - -impl From<Void> for i32 { - fn from(v: Void) -> i32 { - match v {} - } -} - -fn bar(x: Result<!, i32>) -> Result<u32, i32> { - x? -} - -fn foo(x: Result<!, i32>) -> Result<u32, i32> { - let y = (match x { Ok(n) => Ok(n as u32), Err(e) => Err(e) })?; - //~^ WARN unreachable pattern - //~| WARN unreachable expression - Ok(y) -} - -fn qux(x: Result<u32, Void>) -> Result<u32, i32> { - Ok(x?) -} - -fn vom(x: Result<u32, Void>) -> Result<u32, i32> { - let y = (match x { Ok(n) => Ok(n), Err(e) => Err(e) })?; - //~^ WARN unreachable pattern - Ok(y) -} - - -fn main() { - let _ = bar(Err(123)); - let _ = foo(Err(123)); - let _ = qux(Ok(123)); - let _ = vom(Ok(123)); -} |
