1error[E0597]: `f1` does not live long enough
2  --> $DIR/dst-bad-coerce3.rs:16:32
3   |
4LL | fn baz<'a>() {
5   |        -- lifetime `'a` defined here
6...
7LL |     let f2: &Fat<[isize; 3]> = &f1;
8   |                                ^^^ borrowed value does not live long enough
9LL |     let f3: &'a Fat<[isize]> = f2;
10   |             ---------------- type annotation requires that `f1` is borrowed for `'a`
11...
12LL | }
13   | - `f1` dropped here while still borrowed
14
15error[E0597]: `f1` does not live long enough
16  --> $DIR/dst-bad-coerce3.rs:21:25
17   |
18LL | fn baz<'a>() {
19   |        -- lifetime `'a` defined here
20...
21LL |     let f2: &Fat<Foo> = &f1;
22   |                         ^^^ borrowed value does not live long enough
23LL |     let f3: &'a Fat<dyn Bar> = f2;
24   |             ---------------- type annotation requires that `f1` is borrowed for `'a`
25...
26LL | }
27   | - `f1` dropped here while still borrowed
28
29error[E0597]: `f1` does not live long enough
30  --> $DIR/dst-bad-coerce3.rs:26:30
31   |
32LL | fn baz<'a>() {
33   |        -- lifetime `'a` defined here
34...
35LL |     let f2: &([isize; 3],) = &f1;
36   |                              ^^^ borrowed value does not live long enough
37LL |     let f3: &'a ([isize],) = f2;
38   |             -------------- type annotation requires that `f1` is borrowed for `'a`
39...
40LL | }
41   | - `f1` dropped here while still borrowed
42
43error[E0597]: `f1` does not live long enough
44  --> $DIR/dst-bad-coerce3.rs:31:23
45   |
46LL | fn baz<'a>() {
47   |        -- lifetime `'a` defined here
48...
49LL |     let f2: &(Foo,) = &f1;
50   |                       ^^^ borrowed value does not live long enough
51LL |     let f3: &'a (dyn Bar,) = f2;
52   |             -------------- type annotation requires that `f1` is borrowed for `'a`
53LL | }
54   | - `f1` dropped here while still borrowed
55
56error: aborting due to 4 previous errors
57
58For more information about this error, try `rustc --explain E0597`.
59