Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Organize never_type tests #65438

Merged
merged 1 commit into from
Oct 16, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/test/ui/coercion/coerce-issue-49593-box-never.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// build-pass (FIXME(62277): could be check-pass?)
// check-pass

#![feature(never_type)]
#![allow(unreachable_code)]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#![feature(never_type)]

fn foo() -> Result<u32, !> {
Ok(123)
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
error[E0005]: refutable pattern in local binding: `Err(_)` not covered
--> $DIR/feature-gate-exhaustive-patterns.rs:7:9
--> $DIR/feature-gate-exhaustive-patterns.rs:8:9
|
LL | let Ok(_x) = foo();
| ^^^^^^ pattern `Err(_)` not covered
Expand Down
1 change: 1 addition & 0 deletions src/test/ui/for-loop-while/loop-break-value.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
// run-pass

#![allow(unreachable_code)]
#![feature(never_type)]

Expand Down
1 change: 0 additions & 1 deletion src/test/ui/lint/must_use-unit.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
#![feature(never_type)]

#![deny(unused_must_use)]

#[must_use]
Expand Down
6 changes: 3 additions & 3 deletions src/test/ui/lint/must_use-unit.stderr
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
error: unused return value of `foo` that must be used
--> $DIR/must_use-unit.rs:14:5
--> $DIR/must_use-unit.rs:13:5
|
LL | foo();
| ^^^^^^
|
note: lint level defined here
--> $DIR/must_use-unit.rs:3:9
--> $DIR/must_use-unit.rs:2:9
|
LL | #![deny(unused_must_use)]
| ^^^^^^^^^^^^^^^

error: unused return value of `bar` that must be used
--> $DIR/must_use-unit.rs:16:5
--> $DIR/must_use-unit.rs:15:5
|
LL | bar();
| ^^^^^^
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// Test that a variable of type ! can coerce to another type.

// run-fail
// error-pattern:explicit

#![feature(never_type)]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// Test that we can use a ! for an argument of type !

// run-fail
// error-pattern:wowzers!

#![feature(never_type)]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// Test that we can explicitly cast ! to another type

// run-fail
// error-pattern:explicit

#![feature(never_type)]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#![allow(unused_assignments)]
#![allow(unused_variables)]
#![allow(unreachable_code)]

// Test various cases where we permit an unconstrained variable
// to fallback based on control-flow.
//
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
// run-pass
// Test that we can call static methods on ! both directly and when it appears in a generic

#![feature(never_type)]

// Test that we can call static methods on ! both directly and when it appears in a generic

trait StringifyType {
fn stringify_type() -> &'static str;
}
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
// build-pass (FIXME(62277): could be check-pass?)
// check-pass

#![allow(dead_code)]
#![feature(never_type)]
#![feature(exhaustive_patterns)]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
// Test that an assignment of type ! makes the rest of the block dead code.

// check-pass

#![feature(never_type)]
// build-pass (FIXME(62277): could be check-pass?)
#![warn(unused)]


fn main() {
let x: ! = panic!("aah"); //~ WARN unused
drop(x); //~ WARN unreachable
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ LL | drop(x);
| ^^^^^^^^ unreachable statement
|
note: lint level defined here
--> $DIR/never-assign-dead-code.rs:5:9
--> $DIR/never-assign-dead-code.rs:6:9
|
LL | #![warn(unused)]
| ^^^^^^
Expand All @@ -29,7 +29,7 @@ LL | let x: ! = panic!("aah");
| ^ help: consider prefixing with an underscore: `_x`
|
note: lint level defined here
--> $DIR/never-assign-dead-code.rs:5:9
--> $DIR/never-assign-dead-code.rs:6:9
|
LL | #![warn(unused)]
| ^^^^^^
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// Test that we can use ! as an associated type.

// run-fail
// error-pattern:kapow!

#![feature(never_type)]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

#![allow(unused_variables)]
#![allow(unreachable_code)]

// Test that we can extract a ! through pattern matching then use it as several different types.

#![feature(never_type)]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
// Test that we can use ! as an argument to a trait impl.

// run-fail
// error-pattern:oh no!

#![feature(never_type)]
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// build-pass (FIXME(62277): could be check-pass?)
// check-pass

#![crate_type="lib"]

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
// compile-fail

#![feature(never_type)]
#![feature(exhaustive_patterns)]

Expand Down
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
error: unreachable pattern
--> $DIR/unreachable-loop-patterns.rs:20:9
--> $DIR/unreachable-loop-patterns.rs:18:9
|
LL | for _ in unimplemented!() as Void {}
| ^
|
note: lint level defined here
--> $DIR/unreachable-loop-patterns.rs:7:9
--> $DIR/unreachable-loop-patterns.rs:5:9
|
LL | #![deny(unreachable_patterns)]
| ^^^^^^^^^^^^^^^^^^^^

error: unreachable pattern
--> $DIR/unreachable-loop-patterns.rs:20:14
--> $DIR/unreachable-loop-patterns.rs:18:14
|
LL | for _ in unimplemented!() as Void {}
| ^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// build-pass (FIXME(62277): could be check-pass?)
// check-pass
#![feature(never_type, exhaustive_patterns)]
#![warn(unreachable_code)]
#![warn(unreachable_patterns)]
Expand Down