diff options
Diffstat (limited to 'tests/rust/union.rs')
-rw-r--r-- | tests/rust/union.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/rust/union.rs b/tests/rust/union.rs new file mode 100644 index 0000000..b76f98a --- /dev/null +++ b/tests/rust/union.rs @@ -0,0 +1,27 @@ +use std::marker::PhantomData; + +union Opaque { + x: i32, + y: f32, +} + +#[repr(C)] +union Normal { + x: i32, + y: f32, +} + +#[repr(C)] +union NormalWithZST { + x: i32, + y: f32, + z: (), + w: PhantomData<i32>, +} + +#[no_mangle] +pub extern "C" fn root( + a: *mut Opaque, + b: Normal, + c: NormalWithZST +) { } |