You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
//~^ ERROR for `UsingNonCoercePointeeData<T>` to have a valid implementation of `CoerceUnsized`, it must be possible to coerce the field of type `NotCoercePointeeData<T>`
168
-
//~| ERROR for `UsingNonCoercePointeeData<T>` to have a valid implementation of `DispatchFromDyn`, it must be possible to coerce the field of type `NotCoercePointeeData<T>`
error: for `RcWithId<T>` to have a valid implementation of `DispatchFromDyn`, it must be possible to coerce the field of type `Rc<(i32, Box<T>)>`
122
-
--> $DIR/deriving-coerce-pointee-neg.rs:146:10
123
-
|
124
-
LL | #[derive(CoercePointee)]
125
-
| ^^^^^^^^^^^^^
126
-
...
127
-
LL | inner: std::rc::Rc<(i32, Box<T>)>,
128
-
| --------------------------------- `Rc<(i32, Box<T>)>` must be a pointer, reference, or smart pointer that is allowed to be unsized
129
-
|
130
-
= note: this error originates in the derive macro `CoercePointee` (in Nightly builds, run with -Z macro-backtrace for more info)
131
-
132
-
error[E0375]: implementing `DispatchFromDyn` does not allow multiple fields to be coerced
133
-
--> $DIR/deriving-coerce-pointee-neg.rs:154:10
134
-
|
135
-
LL | #[derive(CoercePointee)]
136
-
| ^^^^^^^^^^^^^
137
-
|
138
-
note: the trait `DispatchFromDyn` may only be implemented when a single field is being coerced
139
-
--> $DIR/deriving-coerce-pointee-neg.rs:159:5
140
-
|
141
-
LL | inner1: Box<T>,
142
-
| ^^^^^^^^^^^^^^
143
-
LL | inner2: Box<T>,
144
-
| ^^^^^^^^^^^^^^
145
-
= note: this error originates in the derive macro `CoercePointee` (in Nightly builds, run with -Z macro-backtrace for more info)
146
-
147
-
error: for `UsingNonCoercePointeeData<T>` to have a valid implementation of `DispatchFromDyn`, it must be possible to coerce the field of type `NotCoercePointeeData<T>`
= note: this error originates in the derive macro `CoercePointee` (in Nightly builds, run with -Z macro-backtrace for more info)
168
131
169
132
error[E0375]: implementing `CoerceUnsized` does not allow multiple fields to be coerced
170
-
--> $DIR/deriving-coerce-pointee-neg.rs:154:10
133
+
--> $DIR/deriving-coerce-pointee-neg.rs:153:10
171
134
|
172
135
LL | #[derive(CoercePointee)]
173
136
| ^^^^^^^^^^^^^
174
137
|
175
138
note: the trait `CoerceUnsized` may only be implemented when a single field is being coerced
176
-
--> $DIR/deriving-coerce-pointee-neg.rs:159:5
139
+
--> $DIR/deriving-coerce-pointee-neg.rs:157:5
177
140
|
178
141
LL | inner1: Box<T>,
179
142
| ^^^^^^^^^^^^^^
@@ -182,18 +145,18 @@ LL | inner2: Box<T>,
182
145
= note: this error originates in the derive macro `CoercePointee` (in Nightly builds, run with -Z macro-backtrace for more info)
183
146
184
147
error: for `UsingNonCoercePointeeData<T>` to have a valid implementation of `CoerceUnsized`, it must be possible to coerce the field of type `NotCoercePointeeData<T>`
0 commit comments