Skip to content

Commit 67b04d5

Browse files
committed
bless polonius output of test hrtb-perfect-forwarding.rs
The plan is to use chalk and not have polonius deal with this.
1 parent 02a6662 commit 67b04d5

File tree

1 file changed

+68
-0
lines changed

1 file changed

+68
-0
lines changed
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
warning: function cannot return without recursing
2+
--> $DIR/hrtb-perfect-forwarding.rs:22:1
3+
|
4+
LL | / fn no_hrtb<'b,T>(mut t: T)
5+
LL | | where T : Bar<&'b isize>
6+
LL | | {
7+
LL | | // OK -- `T : Bar<&'b isize>`, and thus the impl above ensures that
8+
LL | | // `&mut T : Bar<&'b isize>`.
9+
LL | | no_hrtb(&mut t);
10+
| | --------------- recursive call site
11+
LL | | }
12+
| |_^ cannot return without recursing
13+
|
14+
= note: `#[warn(unconditional_recursion)]` on by default
15+
= help: a `loop` may express intention better if this is on purpose
16+
17+
warning: function cannot return without recursing
18+
--> $DIR/hrtb-perfect-forwarding.rs:30:1
19+
|
20+
LL | / fn bar_hrtb<T>(mut t: T)
21+
LL | | where T : for<'b> Bar<&'b isize>
22+
LL | | {
23+
LL | | // OK -- `T : for<'b> Bar<&'b isize>`, and thus the impl above
24+
... |
25+
LL | | bar_hrtb(&mut t);
26+
| | ---------------- recursive call site
27+
LL | | }
28+
| |_^ cannot return without recursing
29+
|
30+
= help: a `loop` may express intention better if this is on purpose
31+
32+
warning: function cannot return without recursing
33+
--> $DIR/hrtb-perfect-forwarding.rs:39:1
34+
|
35+
LL | / fn foo_hrtb_bar_not<'b,T>(mut t: T)
36+
LL | | where T : for<'a> Foo<&'a isize> + Bar<&'b isize>
37+
LL | | {
38+
LL | | // Not OK -- The forwarding impl for `Foo` requires that `Bar` also
39+
... |
40+
LL | | foo_hrtb_bar_not(&mut t);
41+
| | ------------------------ recursive call site
42+
LL | | }
43+
| |_^ cannot return without recursing
44+
|
45+
= help: a `loop` may express intention better if this is on purpose
46+
47+
error: higher-ranked subtype error
48+
--> $DIR/hrtb-perfect-forwarding.rs:46:5
49+
|
50+
LL | foo_hrtb_bar_not(&mut t);
51+
| ^^^^^^^^^^^^^^^^^^^^^^^^
52+
53+
warning: function cannot return without recursing
54+
--> $DIR/hrtb-perfect-forwarding.rs:49:1
55+
|
56+
LL | / fn foo_hrtb_bar_hrtb<T>(mut t: T)
57+
LL | | where T : for<'a> Foo<&'a isize> + for<'b> Bar<&'b isize>
58+
LL | | {
59+
LL | | // OK -- now we have `T : for<'b> Bar&'b isize>`.
60+
LL | | foo_hrtb_bar_hrtb(&mut t);
61+
| | ------------------------- recursive call site
62+
LL | | }
63+
| |_^ cannot return without recursing
64+
|
65+
= help: a `loop` may express intention better if this is on purpose
66+
67+
error: aborting due to previous error
68+

0 commit comments

Comments
 (0)