summaryrefslogtreecommitdiffstats
path: root/src/test/ui/rust-2018/edition-lint-infer-outlives-multispan.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/rust-2018/edition-lint-infer-outlives-multispan.rs')
-rw-r--r--src/test/ui/rust-2018/edition-lint-infer-outlives-multispan.rs368
1 files changed, 0 insertions, 368 deletions
diff --git a/src/test/ui/rust-2018/edition-lint-infer-outlives-multispan.rs b/src/test/ui/rust-2018/edition-lint-infer-outlives-multispan.rs
deleted file mode 100644
index 0b3de0df2..000000000
--- a/src/test/ui/rust-2018/edition-lint-infer-outlives-multispan.rs
+++ /dev/null
@@ -1,368 +0,0 @@
-#![allow(unused)]
-#![deny(explicit_outlives_requirements)]
-
-
-// These examples should live in edition-lint-infer-outlives.rs, but are split
-// into this separate file because they can't be `rustfix`'d (and thus, can't
-// be part of a `run-rustfix` test file) until rust-lang-nursery/rustfix#141
-// is solved
-
-mod structs {
- use std::fmt::Debug;
-
- struct TeeOutlivesAyIsDebugBee<'a, 'b, T: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T
- }
-
- struct TeeWhereOutlivesAyIsDebugBee<'a, 'b, T> where T: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T
- }
-
- struct TeeYooOutlivesAyIsDebugBee<'a, 'b, T, U: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: T,
- yoo: &'a &'b U
- }
-
- struct TeeOutlivesAyYooBeeIsDebug<'a, 'b, T: 'a, U: 'b + Debug> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- struct TeeOutlivesAyYooIsDebugBee<'a, 'b, T: 'a, U: Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- struct TeeOutlivesAyYooWhereBee<'a, 'b, T: 'a, U> where U: 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- struct TeeYooWhereOutlivesAyIsDebugBee<'a, 'b, T, U> where U: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: T,
- yoo: &'a &'b U
- }
-
- struct TeeOutlivesAyYooWhereBeeIsDebug<'a, 'b, T: 'a, U> where U: 'b + Debug {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- struct TeeOutlivesAyYooWhereIsDebugBee<'a, 'b, T: 'a, U> where U: Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- struct TeeWhereOutlivesAyYooWhereBeeIsDebug<'a, 'b, T, U> where T: 'a, U: 'b + Debug {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- struct TeeWhereOutlivesAyYooWhereIsDebugBee<'a, 'b, T, U> where T: 'a, U: Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- struct BeeOutlivesAyTeeBee<'a, 'b: 'a, T: 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T,
- }
-
- struct BeeOutlivesAyTeeAyBee<'a, 'b: 'a, T: 'a + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T,
- }
-
- struct BeeOutlivesAyTeeOutlivesAyIsDebugBee<'a, 'b: 'a, T: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T
- }
-
- struct BeeWhereAyTeeWhereOutlivesAyIsDebugBee<'a, 'b, T> where 'b: 'a, T: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T
- }
-
- struct BeeOutlivesAyTeeYooOutlivesAyIsDebugBee<'a, 'b: 'a, T, U: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: T,
- yoo: &'a &'b U
- }
-
- struct BeeWhereAyTeeYooWhereOutlivesAyIsDebugBee<'a, 'b, T, U>
- where U: 'a + Debug + 'b, 'b: 'a
- //~^ ERROR outlives requirements can be inferred
- {
- tee: T,
- yoo: &'a &'b U
- }
-}
-
-mod tuple_structs {
- use std::fmt::Debug;
-
- struct TeeOutlivesAyIsDebugBee<'a, 'b, T: 'a + Debug + 'b>(&'a &'b T);
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeWhereOutlivesAyIsDebugBee<'a, 'b, T>(&'a &'b T) where T: 'a + Debug + 'b;
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeYooOutlivesAyIsDebugBee<'a, 'b, T, U: 'a + Debug + 'b>(T, &'a &'b U);
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeOutlivesAyYooBeeIsDebug<'a, 'b, T: 'a, U: 'b + Debug>(&'a T, &'b U);
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeOutlivesAyYooIsDebugBee<'a, 'b, T: 'a, U: Debug + 'b>(&'a T, &'b U);
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeOutlivesAyYooWhereBee<'a, 'b, T: 'a, U>(&'a T, &'b U) where U: 'b;
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeYooWhereOutlivesAyIsDebugBee<'a, 'b, T, U>(T, &'a &'b U) where U: 'a + Debug + 'b;
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeOutlivesAyYooWhereBeeIsDebug<'a, 'b, T: 'a, U>(&'a T, &'b U) where U: 'b + Debug;
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeOutlivesAyYooWhereIsDebugBee<'a, 'b, T: 'a, U>(&'a T, &'b U) where U: Debug + 'b;
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeWhereAyYooWhereBeeIsDebug<'a, 'b, T, U>(&'a T, &'b U) where T: 'a, U: 'b + Debug;
- //~^ ERROR outlives requirements can be inferred
-
- struct TeeWhereAyYooWhereIsDebugBee<'a, 'b, T, U>(&'a T, &'b U) where T: 'a, U: Debug + 'b;
- //~^ ERROR outlives requirements can be inferred
-
- struct BeeOutlivesAyTeeBee<'a, 'b: 'a, T: 'b>(&'a &'b T);
- //~^ ERROR outlives requirements can be inferred
-
- struct BeeOutlivesAyTeeAyBee<'a, 'b: 'a, T: 'a + 'b>(&'a &'b T);
- //~^ ERROR outlives requirements can be inferred
-
- struct BeeOutlivesAyTeeOutlivesAyIsDebugBee<'a, 'b: 'a, T: 'a + Debug + 'b>(&'a &'b T);
- //~^ ERROR outlives requirements can be inferred
-
- struct BeeWhereAyTeeWhereAyIsDebugBee<'a, 'b, T>(&'a &'b T) where 'b: 'a, T: 'a + Debug + 'b;
- //~^ ERROR outlives requirements can be inferred
-
- struct BeeOutlivesAyTeeYooOutlivesAyIsDebugBee<'a, 'b: 'a, T, U: 'a + Debug + 'b>(T, &'a &'b U);
- //~^ ERROR outlives requirements can be inferred
-
- struct BeeWhereAyTeeYooWhereAyIsDebugBee<'a, 'b, T, U>(T, &'a &'b U)
- where U: 'a + Debug + 'b, 'b: 'a;
- //~^ ERROR outlives requirements can be inferred
-}
-
-mod enums {
- use std::fmt::Debug;
-
- enum TeeOutlivesAyIsDebugBee<'a, 'b, T: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- V { tee: &'a &'b T },
- }
-
- enum TeeWhereOutlivesAyIsDebugBee<'a, 'b, T> where T: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- V(&'a &'b T),
- }
-
- enum TeeYooOutlivesAyIsDebugBee<'a, 'b, T, U: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- V { tee: T, },
- W(&'a &'b U),
- }
-
- enum TeeOutlivesAyYooBeeIsDebug<'a, 'b, T: 'a, U: 'b + Debug> {
- //~^ ERROR outlives requirements can be inferred
- V { tee: &'a T, yoo: &'b U },
- W,
- }
-
- enum TeeOutlivesAyYooIsDebugBee<'a, 'b, T: 'a, U: Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- V(&'a T, &'b U),
- W,
- }
-
- enum TeeOutlivesAyYooWhereBee<'a, 'b, T: 'a, U> where U: 'b {
- //~^ ERROR outlives requirements can be inferred
- V { tee: &'a T },
- W(&'b U),
- }
-
- enum TeeYooWhereOutlivesAyIsDebugBee<'a, 'b, T, U> where U: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- V { tee: T, yoo: &'a &'b U },
- W,
- }
-
- enum TeeOutlivesAyYooWhereBeeIsDebug<'a, 'b, T: 'a, U> where U: 'b + Debug {
- //~^ ERROR outlives requirements can be inferred
- V(&'a T, &'b U),
- W,
- }
-
- enum TeeOutlivesAyYooWhereIsDebugBee<'a, 'b, T: 'a, U> where U: Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- V { tee: &'a T },
- W(&'b U)
- }
-
- enum TeeWhereOutlivesAyYooWhereBeeIsDebug<'a, 'b, T, U> where T: 'a, U: 'b + Debug {
- //~^ ERROR outlives requirements can be inferred
- V { tee: &'a T, yoo: &'b U },
- W,
- }
-
- enum TeeWhereOutlivesAyYooWhereIsDebugBee<'a, 'b, T, U> where T: 'a, U: Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- V(&'a T, &'b U),
- W,
- }
-
- enum BeeOutlivesAyTeeBee<'a, 'b: 'a, T: 'b> {
- //~^ ERROR outlives requirements can be inferred
- V { tee: &'a &'b T },
- }
-
- enum BeeOutlivesAyTeeAyBee<'a, 'b: 'a, T: 'a + 'b> {
- //~^ ERROR outlives requirements can be inferred
- V { tee: &'a &'b T },
- W,
- }
-
- enum BeeOutlivesAyTeeOutlivesAyIsDebugBee<'a, 'b: 'a, T: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- V { tee: &'a &'b T },
- }
-
- enum BeeWhereAyTeeWhereOutlivesAyIsDebugBee<'a, 'b, T> where 'b: 'a, T: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- V(&'a &'b T),
- }
-
- enum BeeOutlivesAyTeeYooOutlivesAyIsDebugBee<'a, 'b: 'a, T, U: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- V { tee: T },
- W(&'a &'b U),
- }
-
- enum BeeWhereAyTeeYooWhereOutlivesAyIsDebugBee<'a, 'b, T, U> where U: 'a + Debug + 'b, 'b: 'a {
- //~^ ERROR outlives requirements can be inferred
- V { tee: T, yoo: &'a &'b U },
- }
-}
-
-mod unions {
- use std::fmt::Debug;
-
- union TeeOutlivesAyIsDebugBee<'a, 'b, T: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T
- }
-
- union TeeWhereOutlivesAyIsDebugBee<'a, 'b, T> where T: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T
- }
-
- union TeeYooOutlivesAyIsDebugBee<'a, 'b, T, U: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: *const T,
- yoo: &'a &'b U
- }
-
- union TeeOutlivesAyYooBeeIsDebug<'a, 'b, T: 'a, U: 'b + Debug> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- union TeeOutlivesAyYooIsDebugBee<'a, 'b, T: 'a, U: Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- union TeeOutlivesAyYooWhereBee<'a, 'b, T: 'a, U> where U: 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- union TeeYooWhereOutlivesAyIsDebugBee<'a, 'b, T, U> where U: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: *const T,
- yoo: &'a &'b U
- }
-
- union TeeOutlivesAyYooWhereBeeIsDebug<'a, 'b, T: 'a, U> where U: 'b + Debug {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- union TeeOutlivesAyYooWhereIsDebugBee<'a, 'b, T: 'a, U> where U: Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- union TeeWhereOutlivesAyYooWhereBeeIsDebug<'a, 'b, T, U> where T: 'a, U: 'b + Debug {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- union TeeWhereOutlivesAyYooWhereIsDebugBee<'a, 'b, T, U> where T: 'a, U: Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a T,
- yoo: &'b U
- }
-
- union BeeOutlivesAyTeeBee<'a, 'b: 'a, T: 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T,
- }
-
- union BeeOutlivesAyTeeAyBee<'a, 'b: 'a, T: 'a + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T,
- }
-
- union BeeOutlivesAyTeeOutlivesAyIsDebugBee<'a, 'b: 'a, T: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T
- }
-
- union BeeWhereAyTeeWhereOutlivesAyIsDebugBee<'a, 'b, T> where 'b: 'a, T: 'a + Debug + 'b {
- //~^ ERROR outlives requirements can be inferred
- tee: &'a &'b T
- }
-
- union BeeOutlivesAyTeeYooOutlivesAyIsDebugBee<'a, 'b: 'a, T, U: 'a + Debug + 'b> {
- //~^ ERROR outlives requirements can be inferred
- tee: *const T,
- yoo: &'a &'b U
- }
-
- union BeeWhereAyTeeYooWhereOutlivesAyIsDebugBee<'a, 'b, T, U> where U: 'a + Debug + 'b, 'b: 'a {
- //~^ ERROR outlives requirements can be inferred
- tee: *const T,
- yoo: &'a &'b U
- }
-}
-
-fn main() {}