| #### Note: this error code is no longer emitted by the compiler. | |
| `CoerceUnsized` or `DispatchFromDyn` was implemented between two types that | |
| are not structs. | |
| Erroneous code example: | |
| ```compile_fail,E0377 | |
| #![feature(coerce_unsized)] | |
| use std::ops::CoerceUnsized; | |
| struct Foo<T: ?Sized> { | |
| a: T, | |
| } | |
| // error: The type `U` is not a struct | |
| impl<T, U> CoerceUnsized<U> for Foo<T> {} | |
| ``` | |
| `CoerceUnsized` or `DispatchFromDyn` can only be implemented between structs. |