@@ -4,79 +4,103 @@ error: generic arguments must come before the first constraint
4
4
LL | struct A<T, M: One<A=(), T>> {
5
5
| ---- ^ generic argument
6
6
| |
7
- | the first constraint is provided here
7
+ | constraint
8
+ |
9
+ help: move the constraint after the generic argument
10
+ |
11
+ LL | struct A<T, M: One<T, A = ()>> {
12
+ | ^^^^^^^^^^^
8
13
9
14
error: generic arguments must come before the first constraint
10
15
--> $DIR/suggest-move-types.rs:33:43
11
16
|
12
17
LL | struct Al<'a, T, M: OneWithLifetime<A=(), T, 'a>> {
13
- | ---- ^ ^^ generic argument
14
- | | |
15
- | | generic argument
16
- | the first constraint is provided here
18
+ | ---- ^ ^^ generic arguments
19
+ | |
20
+ | constraint
21
+ |
22
+ help: move the constraint after the generic arguments
23
+ |
24
+ LL | struct Al<'a, T, M: OneWithLifetime<'a, T, A = ()>> {
25
+ | ^^^^^^^^^^^^^^^
17
26
18
27
error: generic arguments must come before the first constraint
19
28
--> $DIR/suggest-move-types.rs:40:46
20
29
|
21
30
LL | struct B<T, U, V, M: Three<A=(), B=(), C=(), T, U, V>> {
22
- | ---- ^ ^ ^ generic argument
23
- | | | |
24
- | | | generic argument
25
- | | generic argument
26
- | the first constraint is provided here
31
+ | ---- ---- ---- ^ ^ ^ generic arguments
32
+ | |
33
+ | constraints
34
+ |
35
+ help: move the constraints after the generic arguments
36
+ |
37
+ LL | struct B<T, U, V, M: Three<T, U, V, A = (), B = (), C = ()>> {
38
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
27
39
28
40
error: generic arguments must come before the first constraint
29
41
--> $DIR/suggest-move-types.rs:48:71
30
42
|
31
43
LL | struct Bl<'a, 'b, 'c, T, U, V, M: ThreeWithLifetime<A=(), B=(), C=(), T, U, V, 'a, 'b, 'c>> {
32
- | ---- ^ ^ ^ ^^ ^^ ^^ generic argument
33
- | | | | | | |
34
- | | | | | | generic argument
35
- | | | | | generic argument
36
- | | | | generic argument
37
- | | | generic argument
38
- | | generic argument
39
- | the first constraint is provided here
44
+ | ---- ---- ---- ^ ^ ^ ^^ ^^ ^^ generic arguments
45
+ | |
46
+ | constraints
47
+ |
48
+ help: move the constraints after the generic arguments
49
+ |
50
+ LL | struct Bl<'a, 'b, 'c, T, U, V, M: ThreeWithLifetime<'a, 'b, 'c, T, U, V, A = (), B = (), C = ()>> {
51
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
40
52
41
53
error: generic arguments must come before the first constraint
42
- --> $DIR/suggest-move-types.rs:57:49
54
+ --> $DIR/suggest-move-types.rs:57:28
43
55
|
44
56
LL | struct C<T, U, V, M: Three<T, A=(), B=(), C=(), U, V>> {
45
- | ---- ^ ^ generic argument
46
- | | |
47
- | | generic argument
48
- | the first constraint is provided here
57
+ | ^ ---- ---- ---- ^ ^ generic arguments
58
+ | |
59
+ | constraints
60
+ |
61
+ help: move the constraints after the generic arguments
62
+ |
63
+ LL | struct C<T, U, V, M: Three<T, U, V, A = (), B = (), C = ()>> {
64
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
49
65
50
66
error: generic arguments must come before the first constraint
51
- --> $DIR/suggest-move-types.rs:65:78
67
+ --> $DIR/suggest-move-types.rs:65:53
52
68
|
53
69
LL | struct Cl<'a, 'b, 'c, T, U, V, M: ThreeWithLifetime<T, 'a, A=(), B=(), C=(), U, 'b, V, 'c>> {
54
- | ---- ^ ^^ ^ ^^ generic argument
55
- | | | | |
56
- | | | | generic argument
57
- | | | generic argument
58
- | | generic argument
59
- | the first constraint is provided here
70
+ | ^ ^^ ---- ---- ---- ^ ^^ ^ ^^ generic arguments
71
+ | |
72
+ | constraints
73
+ |
74
+ help: move the constraints after the generic arguments
75
+ |
76
+ LL | struct Cl<'a, 'b, 'c, T, U, V, M: ThreeWithLifetime<'a, 'b, 'c, T, U, V, A = (), B = (), C = ()>> {
77
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
60
78
61
79
error: generic arguments must come before the first constraint
62
- --> $DIR/suggest-move-types.rs:74:43
80
+ --> $DIR/suggest-move-types.rs:74:28
63
81
|
64
82
LL | struct D<T, U, V, M: Three<T, A=(), B=(), U, C=(), V>> {
65
- | ---- ^ ^ generic argument
66
- | | |
67
- | | generic argument
68
- | the first constraint is provided here
83
+ | ^ ---- ---- ^ ---- ^ generic arguments
84
+ | |
85
+ | constraints
86
+ |
87
+ help: move the constraints after the generic arguments
88
+ |
89
+ LL | struct D<T, U, V, M: Three<T, U, V, A = (), B = (), C = ()>> {
90
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
69
91
70
92
error: generic arguments must come before the first constraint
71
- --> $DIR/suggest-move-types.rs:82:72
93
+ --> $DIR/suggest-move-types.rs:82:53
72
94
|
73
95
LL | struct Dl<'a, 'b, 'c, T, U, V, M: ThreeWithLifetime<T, 'a, A=(), B=(), U, 'b, C=(), V, 'c>> {
74
- | ---- ^ ^^ ^ ^^ generic argument
75
- | | | | |
76
- | | | | generic argument
77
- | | | generic argument
78
- | | generic argument
79
- | the first constraint is provided here
96
+ | ^ ^^ ---- ---- ^ ^^ ---- ^ ^^ generic arguments
97
+ | |
98
+ | constraints
99
+ |
100
+ help: move the constraints after the generic arguments
101
+ |
102
+ LL | struct Dl<'a, 'b, 'c, T, U, V, M: ThreeWithLifetime<'a, 'b, 'c, T, U, V, A = (), B = (), C = ()>> {
103
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
80
104
81
105
error[E0747]: type provided when a lifetime was expected
82
106
--> $DIR/suggest-move-types.rs:33:43
0 commit comments