2019-01-08 15:14:04 -06:00
|
|
|
error[E0038]: the trait `Bar` cannot be made into an object
|
|
|
|
--> $DIR/object-safety-generics.rs:20:5
|
|
|
|
|
|
2020-01-31 18:47:00 -06:00
|
|
|
LL | trait Bar {
|
|
|
|
| --- this trait cannot be made into an object...
|
2019-01-08 15:14:04 -06:00
|
|
|
LL | fn bar<T>(&self, t: T);
|
2020-01-31 18:47:00 -06:00
|
|
|
| --- ...because method `bar` has generic type parameters
|
2019-01-08 15:14:04 -06:00
|
|
|
...
|
|
|
|
LL | t
|
|
|
|
| ^ the trait `Bar` cannot be made into an object
|
|
|
|
|
|
2020-01-31 18:47:00 -06:00
|
|
|
= help: consider moving `bar` to another trait
|
2019-01-08 15:14:04 -06:00
|
|
|
= note: required because of the requirements on the impl of `std::ops::CoerceUnsized<&dyn Bar>` for `&T`
|
|
|
|
= note: required by cast to type `&dyn Bar`
|
|
|
|
|
|
|
|
error[E0038]: the trait `Bar` cannot be made into an object
|
|
|
|
--> $DIR/object-safety-generics.rs:26:5
|
|
|
|
|
|
2020-01-31 18:47:00 -06:00
|
|
|
LL | trait Bar {
|
|
|
|
| --- this trait cannot be made into an object...
|
2019-01-08 15:14:04 -06:00
|
|
|
LL | fn bar<T>(&self, t: T);
|
2020-01-31 18:47:00 -06:00
|
|
|
| --- ...because method `bar` has generic type parameters
|
2019-01-08 15:14:04 -06:00
|
|
|
...
|
|
|
|
LL | t as &dyn Bar
|
|
|
|
| ^ the trait `Bar` cannot be made into an object
|
|
|
|
|
|
2020-01-31 18:47:00 -06:00
|
|
|
= help: consider moving `bar` to another trait
|
2019-01-08 15:14:04 -06:00
|
|
|
= note: required because of the requirements on the impl of `std::ops::CoerceUnsized<&dyn Bar>` for `&T`
|
|
|
|
= note: required by cast to type `&dyn Bar`
|
|
|
|
|
|
|
|
error: aborting due to 2 previous errors
|
|
|
|
|
|
|
|
For more information about this error, try `rustc --explain E0038`.
|