diff options
Diffstat (limited to 'src/test/ui/unsized/unsized5.rs')
-rw-r--r-- | src/test/ui/unsized/unsized5.rs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/test/ui/unsized/unsized5.rs b/src/test/ui/unsized/unsized5.rs new file mode 100644 index 000000000..befd2244d --- /dev/null +++ b/src/test/ui/unsized/unsized5.rs @@ -0,0 +1,34 @@ +// Test `?Sized` types not allowed in fields (except the last one). + +struct S1<X: ?Sized> { + f1: X, + //~^ ERROR the size for values of type + f2: isize, +} +struct S2<X: ?Sized> { + f: isize, + g: X, + //~^ ERROR the size for values of type + h: isize, +} +struct S3 { + f: str, + //~^ ERROR the size for values of type + g: [usize] +} +struct S4 { + f: [u8], + //~^ ERROR the size for values of type + g: usize +} +enum E<X: ?Sized> { + V1(X, isize), + //~^ ERROR the size for values of type +} +enum F<X: ?Sized> { + V2{f1: X, f: isize}, + //~^ ERROR the size for values of type +} + +pub fn main() { +} |