error[E0491]: in type `&'a WithAssoc>`, reference has a longer lifetime than the data it references --> $DIR/regions-outlives-projection-container.rs:40:13 | LL | let _x: &'a WithAssoc> = loop { }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | note: the pointer is valid for the lifetime 'a as defined on the function body at 32:15 --> $DIR/regions-outlives-projection-container.rs:32:15 | LL | fn with_assoc<'a,'b>() { | ^^ note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 32:18 --> $DIR/regions-outlives-projection-container.rs:32:18 | LL | fn with_assoc<'a,'b>() { | ^^ error[E0491]: in type `&'a WithoutAssoc>`, reference has a longer lifetime than the data it references --> $DIR/regions-outlives-projection-container.rs:58:13 | LL | let _x: &'a WithoutAssoc> = loop { }; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | note: the pointer is valid for the lifetime 'a as defined on the function body at 54:18 --> $DIR/regions-outlives-projection-container.rs:54:18 | LL | fn without_assoc<'a,'b>() { | ^^ note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 54:21 --> $DIR/regions-outlives-projection-container.rs:54:21 | LL | fn without_assoc<'a,'b>() { | ^^ error[E0491]: in type `&'a WithAssoc>`, reference has a longer lifetime than the data it references --> $DIR/regions-outlives-projection-container.rs:67:12 | LL | call::<&'a WithAssoc>>(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | note: the pointer is valid for the lifetime 'a as defined on the function body at 62:20 --> $DIR/regions-outlives-projection-container.rs:62:20 | LL | fn call_with_assoc<'a,'b>() { | ^^ note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 62:23 --> $DIR/regions-outlives-projection-container.rs:62:23 | LL | fn call_with_assoc<'a,'b>() { | ^^ error[E0491]: in type `&'a WithoutAssoc>`, reference has a longer lifetime than the data it references --> $DIR/regions-outlives-projection-container.rs:74:12 | LL | call::<&'a WithoutAssoc>>(); //~ ERROR reference has a longer lifetime | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | note: the pointer is valid for the lifetime 'a as defined on the function body at 71:23 --> $DIR/regions-outlives-projection-container.rs:71:23 | LL | fn call_without_assoc<'a,'b>() { | ^^ note: but the referenced data is only valid for the lifetime 'b as defined on the function body at 71:26 --> $DIR/regions-outlives-projection-container.rs:71:26 | LL | fn call_without_assoc<'a,'b>() { | ^^ error: aborting due to 4 previous errors For more information about this error, try `rustc --explain E0491`.