summaryrefslogtreecommitdiffstats
path: root/src/test/ui/variance/variance-cell-is-invariant.stderr
blob: ab5435d1656d286d7e324eef216133eb3828eb77 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
error: lifetime may not live long enough
  --> $DIR/variance-cell-is-invariant.rs:14:12
   |
LL | fn use_<'short,'long>(c: Foo<'short>,
   |         ------ ----- lifetime `'long` defined here
   |         |
   |         lifetime `'short` defined here
...
LL |     let _: Foo<'long> = c;
   |            ^^^^^^^^^^ type annotation requires that `'short` must outlive `'long`
   |
   = help: consider adding the following bound: `'short: 'long`
   = note: requirement occurs because of the type `Foo<'_>`, which makes the generic argument `'_` invariant
   = note: the struct `Foo<'a>` is invariant over the parameter `'a`
   = help: see <https://doc.rust-lang.org/nomicon/subtyping.html> for more information about variance

error: aborting due to previous error