From 46ef9f820c02f87137f963ca08007c4ca1b205a7 Mon Sep 17 00:00:00 2001 From: varkor Date: Tue, 20 Nov 2018 22:49:48 +0000 Subject: [PATCH] Fix broken tests --- .../binding/empty-types-in-patterns.rs | 1 + src/test/ui/issues/issue-44402.rs | 5 ++++- .../unreachable/unreachable-loop-patterns.rs | 18 +++++++++++++++--- .../unreachable-loop-patterns.stderr | 6 +++--- 4 files changed, 23 insertions(+), 7 deletions(-) diff --git a/src/test/run-pass/binding/empty-types-in-patterns.rs b/src/test/run-pass/binding/empty-types-in-patterns.rs index c230442eecc58..7fb7eec125601 100644 --- a/src/test/run-pass/binding/empty-types-in-patterns.rs +++ b/src/test/run-pass/binding/empty-types-in-patterns.rs @@ -60,6 +60,7 @@ fn main() { let x: Result = Ok(123); match x { Ok(y) => y, + Err(_) => unimplemented!(), }; bar(&[]); diff --git a/src/test/ui/issues/issue-44402.rs b/src/test/ui/issues/issue-44402.rs index f44f261041a37..ecc5edbbbf4bd 100644 --- a/src/test/ui/issues/issue-44402.rs +++ b/src/test/ui/issues/issue-44402.rs @@ -33,7 +33,10 @@ fn test_a() { fn test_b() { let x: Option = None; - match x { None => () } + match x { + Some(_) => (), + None => () + } } fn main() { } diff --git a/src/test/ui/unreachable/unreachable-loop-patterns.rs b/src/test/ui/unreachable/unreachable-loop-patterns.rs index cfd829e416e5b..eae630fa7dbe6 100644 --- a/src/test/ui/unreachable/unreachable-loop-patterns.rs +++ b/src/test/ui/unreachable/unreachable-loop-patterns.rs @@ -8,14 +8,26 @@ // option. This file may not be copied, modified, or distributed // except according to those terms. +// compile-fail + #![feature(never_type)] #![feature(exhaustive_patterns)] + +#![allow(unreachable_code)] #![deny(unreachable_patterns)] -fn main() { - let x: &[!] = &[]; +enum Void {} + +impl Iterator for Void { + type Item = Void; - for _ in x {} + fn next(&mut self) -> Option { + None + } +} + +fn main() { + for _ in unimplemented!() as Void {} //~^ ERROR unreachable pattern } diff --git a/src/test/ui/unreachable/unreachable-loop-patterns.stderr b/src/test/ui/unreachable/unreachable-loop-patterns.stderr index 724a92b094790..6cf875783930a 100644 --- a/src/test/ui/unreachable/unreachable-loop-patterns.stderr +++ b/src/test/ui/unreachable/unreachable-loop-patterns.stderr @@ -1,11 +1,11 @@ error: unreachable pattern - --> $DIR/unreachable-loop-patterns.rs:18:9 + --> $DIR/unreachable-loop-patterns.rs:30:9 | -LL | for _ in x {} +LL | for _ in unimplemented!() as Void {} | ^ | note: lint level defined here - --> $DIR/unreachable-loop-patterns.rs:13:9 + --> $DIR/unreachable-loop-patterns.rs:17:9 | LL | #![deny(unreachable_patterns)] | ^^^^^^^^^^^^^^^^^^^^