rust/tests/ui/unsized/param-mentioned-by-different-field.rs

11 lines
308 B
Rust
Raw Normal View History

2021-08-26 05:57:42 -05:00
// We must not allow this with our current setup as `T`
// is mentioned both in the tail of `Foo` and by another
// field.
struct Foo<T: ?Sized>(Box<T>, T);
fn main() {
let x: Foo<[u8; 1]> = Foo(Box::new([2]), [3]);
let y: &Foo<[u8]> = &x; //~ ERROR mismatched types
assert_eq!(y.0.len(), 1);
}