error: lifetime may not live long enough
  --> $DIR/outlives-suggestion-more.rs:5:5
   |
LL | fn foo1<'a, 'b, 'c, 'd>(x: &'a usize, y: &'b usize) -> (&'c usize, &'d usize) {
   |         --      -- lifetime `'c` defined here
   |         |
   |         lifetime `'a` defined here
LL |     (x, y)
   |     ^^^^^^ function was supposed to return data with lifetime `'c` but it is returning data with lifetime `'a`
   |
   = help: consider adding the following bound: `'a: 'c`

error: lifetime may not live long enough
  --> $DIR/outlives-suggestion-more.rs:5:5
   |
LL | fn foo1<'a, 'b, 'c, 'd>(x: &'a usize, y: &'b usize) -> (&'c usize, &'d usize) {
   |             --      -- lifetime `'d` defined here
   |             |
   |             lifetime `'b` defined here
LL |     (x, y)
   |     ^^^^^^ function was supposed to return data with lifetime `'d` but it is returning data with lifetime `'b`
   |
   = help: consider adding the following bound: `'b: 'd`

help: the following changes may resolve your lifetime errors
   |
   = help: add bound `'a: 'c`
   = help: add bound `'b: 'd`

error: lifetime may not live long enough
  --> $DIR/outlives-suggestion-more.rs:11:5
   |
LL | fn foo2<'a, 'b, 'c>(x: &'a usize, y: &'b usize) -> (&'c usize, &'static usize) {
   |         --      -- lifetime `'c` defined here
   |         |
   |         lifetime `'a` defined here
LL |     (x, y)
   |     ^^^^^^ function was supposed to return data with lifetime `'c` but it is returning data with lifetime `'a`
   |
   = help: consider adding the following bound: `'a: 'c`

error: lifetime may not live long enough
  --> $DIR/outlives-suggestion-more.rs:11:5
   |
LL | fn foo2<'a, 'b, 'c>(x: &'a usize, y: &'b usize) -> (&'c usize, &'static usize) {
   |             -- lifetime `'b` defined here
LL |     (x, y)
   |     ^^^^^^ returning this value requires that `'b` must outlive `'static`

help: the following changes may resolve your lifetime errors
   |
   = help: add bound `'a: 'c`
   = help: replace `'b` with `'static`

error: lifetime may not live long enough
  --> $DIR/outlives-suggestion-more.rs:21:5
   |
LL | fn foo3<'a, 'b, 'c, 'd, 'e>(
   |         --  -- lifetime `'b` defined here
   |         |
   |         lifetime `'a` defined here
...
LL |     (x, y, z)
   |     ^^^^^^^^^ function was supposed to return data with lifetime `'b` but it is returning data with lifetime `'a`
   |
   = help: consider adding the following bound: `'a: 'b`

error: lifetime may not live long enough
  --> $DIR/outlives-suggestion-more.rs:21:5
   |
LL | fn foo3<'a, 'b, 'c, 'd, 'e>(
   |         --  -- lifetime `'b` defined here
   |         |
   |         lifetime `'a` defined here
...
LL |     (x, y, z)
   |     ^^^^^^^^^ function was supposed to return data with lifetime `'a` but it is returning data with lifetime `'b`
   |
   = help: consider adding the following bound: `'b: 'a`

error: lifetime may not live long enough
  --> $DIR/outlives-suggestion-more.rs:21:5
   |
LL | fn foo3<'a, 'b, 'c, 'd, 'e>(
   |                 -- lifetime `'c` defined here
...
LL |     (x, y, z)
   |     ^^^^^^^^^ returning this value requires that `'c` must outlive `'static`

help: the following changes may resolve your lifetime errors
   |
   = help: `'a` and `'b` must be the same: replace one with the other
   = help: replace `'c` with `'static`

error: aborting due to 7 previous errors

