summaryrefslogtreecommitdiffstats
path: root/tests/ui/regions/region-invariant-static-error-reporting.stderr
blob: 2ad39b00071704ca6d206317ad3bafba9b2d8b22 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
error[E0521]: borrowed data escapes outside of function
  --> $DIR/region-invariant-static-error-reporting.rs:14:9
   |
LL | fn unify<'a>(x: Option<Invariant<'a>>, f: fn(Invariant<'a>)) {
   |          --  - `x` is a reference that is only valid in the function body
   |          |
   |          lifetime `'a` defined here
LL |     let bad = if x.is_some() {
LL |         x.unwrap()
   |         ^^^^^^^^^^
   |         |
   |         `x` escapes the function body here
   |         argument requires that `'a` must outlive `'static`
   |
   = note: requirement occurs because of the type `Invariant<'_>`, which makes the generic argument `'_` invariant
   = note: the struct `Invariant<'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

For more information about this error, try `rustc --explain E0521`.