@@ -104,61 +104,49 @@ LL | | }
104
104
| |_^
105
105
106
106
error[E0277]: the trait bound `<Self as Foo2<T>>::Baz: std::clone::Clone` is not satisfied
107
- --> $DIR/defaults-suitability.rs:70:29
107
+ --> $DIR/defaults-suitability.rs:74:15
108
108
|
109
- LL | <Self as Foo2<T>>:: Bar: Clone,
110
- | ^^^^^ the trait `std::clone::Clone` is not implemented for `<Self as Foo2<T>>::Baz`
109
+ LL | type Bar: Clone = Vec<Self::Baz>;
110
+ | ^^^^^ the trait `std::clone::Clone` is not implemented for `<Self as Foo2<T>>::Baz`
111
111
|
112
112
= help: consider adding a `where <Self as Foo2<T>>::Baz: std::clone::Clone` bound
113
113
= note: required because of the requirements on the impl of `std::clone::Clone` for `std::vec::Vec<<Self as Foo2<T>>::Baz>`
114
114
note: required by `Foo2`
115
- --> $DIR/defaults-suitability.rs:69 :1
115
+ --> $DIR/defaults-suitability.rs:73 :1
116
116
|
117
- LL | / trait Foo2<T> where
118
- LL | | <Self as Foo2<T>>::Bar: Clone,
119
- LL | |
120
- LL | | {
121
- LL | | type Bar = Vec<Self::Baz>;
122
- LL | | type Baz = T;
123
- LL | | }
124
- | |_^
117
+ LL | trait Foo2<T> {
118
+ | ^^^^^^^^^^^^^
125
119
126
- error[E0277]: the trait bound `<Self as Foo3 <T>>::Baz: std::clone::Clone` is not satisfied
127
- --> $DIR/defaults-suitability.rs:78:29
120
+ error[E0277]: the trait bound `<Self as Foo25 <T>>::Baz: std::clone::Clone` is not satisfied
121
+ --> $DIR/defaults-suitability.rs:83:15
128
122
|
129
- LL | <Self as Foo3<T>>:: Bar: Clone,
130
- | ^^^^^ the trait `std::clone::Clone` is not implemented for `<Self as Foo3 <T>>::Baz`
123
+ LL | type Bar: Clone = Vec<Self::Baz>;
124
+ | ^^^^^ the trait `std::clone::Clone` is not implemented for `<Self as Foo25 <T>>::Baz`
131
125
|
132
- = help: consider adding a `where <Self as Foo3 <T>>::Baz: std::clone::Clone` bound
133
- = note: required because of the requirements on the impl of `std::clone::Clone` for `std::vec::Vec<<Self as Foo3 <T>>::Baz>`
134
- note: required by `Foo3 `
135
- --> $DIR/defaults-suitability.rs:77 :1
126
+ = help: consider adding a `where <Self as Foo25 <T>>::Baz: std::clone::Clone` bound
127
+ = note: required because of the requirements on the impl of `std::clone::Clone` for `std::vec::Vec<<Self as Foo25 <T>>::Baz>`
128
+ note: required by `Foo25 `
129
+ --> $DIR/defaults-suitability.rs:82 :1
136
130
|
137
- LL | / trait Foo3<T: Clone> where
138
- LL | | <Self as Foo3<T>>::Bar: Clone,
139
- LL | |
140
- LL | | {
141
- LL | | type Bar = Vec<Self::Baz>;
142
- LL | | type Baz = T;
143
- LL | | }
144
- | |_^
131
+ LL | trait Foo25<T: Clone> {
132
+ | ^^^^^^^^^^^^^^^^^^^^^
145
133
146
134
error[E0277]: the trait bound `T: std::clone::Clone` is not satisfied
147
- --> $DIR/defaults-suitability.rs:89:15
135
+ --> $DIR/defaults-suitability.rs:92:16
148
136
|
149
- LL | type Baz: Clone = T;
150
- | ^^^^^ the trait `std::clone::Clone` is not implemented for `T`
137
+ LL | Self:: Baz: Clone,
138
+ | ^^^^^ the trait `std::clone::Clone` is not implemented for `T`
151
139
|
152
140
= help: consider adding a `where T: std::clone::Clone` bound
153
- note: required by `Foo4`
154
- --> $DIR/defaults-suitability.rs:85:1
155
- |
156
- LL | / trait Foo4<T> where
157
- LL | | <Self as Foo4<T>>::Bar: Clone,
158
- LL | | {
159
- LL | | type Bar = Vec<Self::Baz>;
160
- LL | | type Baz: Clone = T;
141
+ note: required by `Foo3`
142
+ --> $DIR/defaults-suitability.rs:90:1
143
+ |
144
+ LL | / trait Foo3<T> where
145
+ LL | | Self::Bar: Clone,
146
+ LL | | Self::Baz: Clone,
161
147
LL | |
148
+ ... |
149
+ LL | | type Baz = T;
162
150
LL | | }
163
151
| |_^
164
152
0 commit comments