diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:19:13 +0000 |
commit | 218caa410aa38c29984be31a5229b9fa717560ee (patch) | |
tree | c54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/ui/layout/zero-sized-array-union.rs | |
parent | Releasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff) | |
download | rustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip |
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/ui/layout/zero-sized-array-union.rs')
-rw-r--r-- | src/test/ui/layout/zero-sized-array-union.rs | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/src/test/ui/layout/zero-sized-array-union.rs b/src/test/ui/layout/zero-sized-array-union.rs deleted file mode 100644 index 1a662ba44..000000000 --- a/src/test/ui/layout/zero-sized-array-union.rs +++ /dev/null @@ -1,95 +0,0 @@ -#![feature(rustc_attrs)] - -// Various tests around the behavior of zero-sized arrays and -// unions. This matches the behavior of modern C compilers, though -// older compilers (and sometimes clang) treat `T[0]` as a "flexible -// array member". See more -// details in #56877. - -#[derive(Copy, Clone)] -#[repr(C)] -struct Empty { } - -#[derive(Copy, Clone)] -#[repr(C)] -struct Empty2 { - e: Empty -} - -#[derive(Copy, Clone)] -#[repr(C)] -struct Empty3 { - z: [f32; 0], -} - -#[derive(Copy, Clone)] -#[repr(C)] -struct Empty4 { - e: Empty3 -} - -#[repr(C)] -union U1 { - s: Empty -} - -#[repr(C)] -union U2 { - s: Empty2 -} - -#[repr(C)] -union U3 { - s: Empty3 -} - -#[repr(C)] -union U4 { - s: Empty4 -} - -#[repr(C)] -struct Baz1 { - x: f32, - y: f32, - u: U1, -} - -#[rustc_layout(homogeneous_aggregate)] -type TestBaz1 = Baz1; -//~^ ERROR homogeneous_aggregate: Ok(Homogeneous - -#[repr(C)] -struct Baz2 { - x: f32, - y: f32, - u: U2, -} - -#[rustc_layout(homogeneous_aggregate)] -type TestBaz2 = Baz2; -//~^ ERROR homogeneous_aggregate: Ok(Homogeneous - -#[repr(C)] -struct Baz3 { - x: f32, - y: f32, - u: U3, -} - -#[rustc_layout(homogeneous_aggregate)] -type TestBaz3 = Baz3; -//~^ ERROR homogeneous_aggregate: Ok(Homogeneous - -#[repr(C)] -struct Baz4 { - x: f32, - y: f32, - u: U4, -} - -#[rustc_layout(homogeneous_aggregate)] -type TestBaz4 = Baz4; -//~^ ERROR homogeneous_aggregate: Ok(Homogeneous - -fn main() { } |