about summary refs log tree commit diff
path: root/tests/ui/impl-trait/region-escape-via-bound.stderr
blob: 0518231cfe984926c1d9cb724cddbb7faaa8a842 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
error[E0700]: hidden type for `impl Trait<'y>` captures lifetime that does not appear in bounds
  --> $DIR/region-escape-via-bound.rs:17:5
   |
LL | fn foo<'x, 'y>(x: Cell<&'x u32>) -> impl Trait<'y>
   |        --                           -------------- opaque type defined here
   |        |
   |        hidden type `Cell<&'x u32>` captures the lifetime `'x` as defined here
...
LL |     x
   |     ^
   |
help: add a `use<...>` bound to explicitly capture `'x`
   |
LL | fn foo<'x, 'y>(x: Cell<&'x u32>) -> impl Trait<'y> + use<'y, 'x>
   |                                                    +++++++++++++

error: aborting due to 1 previous error

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