1 error: incompatible lifetime on type
2 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:15:18
4 LL | type T<'a> = Box<dyn A + 'a>;
7 note: because this has an unmet lifetime requirement
8 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:10:17
11 | ^ introduces a `'static` lifetime requirement
12 note: the lifetime `'a` as defined here...
13 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:15:12
15 LL | type T<'a> = Box<dyn A + 'a>;
17 = note: ...does not necessarily outlive the static lifetime introduced by the compatible `impl`
18 note: this has an implicit `'static` lifetime requirement
19 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:7:20
21 LL | impl A for Box<dyn A> {}
23 help: consider relaxing the implicit `'static` requirement
25 LL | impl A for Box<dyn A + '_> {}
28 error: incompatible lifetime on type
29 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:25:18
31 LL | type T<'a> = Box<dyn A + 'a>;
34 note: because this has an unmet lifetime requirement
35 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:21:17
38 | ^ introduces a `'static` lifetime requirement
39 note: the lifetime `'a` as defined here...
40 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:25:12
42 LL | type T<'a> = Box<dyn A + 'a>;
44 note: ...does not necessarily outlive the static lifetime introduced by the compatible `impl`
45 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:19:1
47 LL | impl C for Box<dyn A + 'static> {}
48 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
50 error: incompatible lifetime on type
51 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:35:18
53 LL | type T<'a> = (Box<dyn A + 'a>, Box<dyn A + 'a>);
54 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
56 note: because this has an unmet lifetime requirement
57 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:31:17
60 | ^ introduces a `'static` lifetime requirement
61 note: the lifetime `'a` as defined here...
62 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:35:12
64 LL | type T<'a> = (Box<dyn A + 'a>, Box<dyn A + 'a>);
66 = note: ...does not necessarily outlive the static lifetime introduced by the compatible `impl`
67 note: this has an implicit `'static` lifetime requirement
68 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:29:21
70 LL | impl E for (Box<dyn A>, Box<dyn A>) {}
72 note: this has an implicit `'static` lifetime requirement
73 --> $DIR/issue-78113-lifetime-mismatch-dyn-trait-box.rs:29:33
75 LL | impl E for (Box<dyn A>, Box<dyn A>) {}
77 help: consider relaxing the implicit `'static` requirement
79 LL | impl E for (Box<dyn A + '_>, Box<dyn A>) {}
81 help: consider relaxing the implicit `'static` requirement
83 LL | impl E for (Box<dyn A>, Box<dyn A + '_>) {}
86 error: aborting due to 3 previous errors