stabalize infer outlives requirements (RFC 2093).

Co-authored-by: nikomatsakis
This commit is contained in:
toidiu 2018-08-28 00:46:08 -04:00
parent 7ee72070bd
commit 731f4efae5
138 changed files with 809 additions and 760 deletions

View file

@ -8,6 +8,8 @@
// option. This file may not be copied, modified, or distributed
// except according to those terms.
// compile-pass
#![feature(rustc_attrs)]
#![allow(warnings)]
@ -17,7 +19,6 @@ struct Point {
struct NestedA<'a, 'b> {
x: &'a NestedB<'b>
//~^ ERROR E0491
}
struct NestedB<'a> {

View file

@ -1,20 +0,0 @@
error[E0491]: in type `&'a NestedB<'b>`, reference has a longer lifetime than the data it references
--> $DIR/issue-37323.rs:19:5
|
LL | x: &'a NestedB<'b>
| ^^^^^^^^^^^^^^^^^^
|
note: the pointer is valid for the lifetime 'a as defined on the struct at 18:16
--> $DIR/issue-37323.rs:18:16
|
LL | struct NestedA<'a, 'b> {
| ^^
note: but the referenced data is only valid for the lifetime 'b as defined on the struct at 18:20
--> $DIR/issue-37323.rs:18:20
|
LL | struct NestedA<'a, 'b> {
| ^^
error: aborting due to previous error
For more information about this error, try `rustc --explain E0491`.