2016-07-02 22:24:27 -05:00
|
|
|
#![allow(dead_code)]
|
|
|
|
|
|
|
|
#[repr(C)]
|
|
|
|
enum A { A }
|
|
|
|
|
|
|
|
#[repr(u64)]
|
|
|
|
enum B { B }
|
|
|
|
|
|
|
|
#[repr(C, u64)] //~ WARNING conflicting representation hints
|
|
|
|
enum C { C }
|
|
|
|
|
|
|
|
#[repr(u32, u64)] //~ WARNING conflicting representation hints
|
|
|
|
enum D { D }
|
|
|
|
|
|
|
|
#[repr(C, packed)]
|
|
|
|
struct E(i32);
|
|
|
|
|
2017-07-23 02:27:13 -05:00
|
|
|
#[repr(packed, align(8))]
|
2017-07-23 16:54:48 -05:00
|
|
|
struct F(i32); //~ ERROR type has conflicting packed and align representation hints
|
2017-07-23 02:27:13 -05:00
|
|
|
|
|
|
|
#[repr(packed)]
|
|
|
|
#[repr(align(8))]
|
2017-07-23 16:54:48 -05:00
|
|
|
struct G(i32); //~ ERROR type has conflicting packed and align representation hints
|
2017-07-23 02:27:13 -05:00
|
|
|
|
|
|
|
#[repr(align(8))]
|
|
|
|
#[repr(packed)]
|
2017-07-23 16:54:48 -05:00
|
|
|
struct H(i32); //~ ERROR type has conflicting packed and align representation hints
|
|
|
|
|
2018-02-04 05:10:28 -06:00
|
|
|
#[repr(packed, packed(2))]
|
|
|
|
struct I(i32); //~ ERROR type has conflicting packed representation hints
|
|
|
|
|
|
|
|
#[repr(packed(2))]
|
|
|
|
#[repr(packed)]
|
|
|
|
struct J(i32); //~ ERROR type has conflicting packed representation hints
|
|
|
|
|
|
|
|
#[repr(packed, packed(1))]
|
|
|
|
struct K(i32);
|
|
|
|
|
2017-07-23 16:54:48 -05:00
|
|
|
#[repr(packed, align(8))]
|
|
|
|
union X { //~ ERROR type has conflicting packed and align representation hints
|
|
|
|
i: i32
|
|
|
|
}
|
|
|
|
|
|
|
|
#[repr(packed)]
|
|
|
|
#[repr(align(8))]
|
|
|
|
union Y { //~ ERROR type has conflicting packed and align representation hints
|
|
|
|
i: i32
|
|
|
|
}
|
|
|
|
|
|
|
|
#[repr(align(8))]
|
|
|
|
#[repr(packed)]
|
|
|
|
union Z { //~ ERROR type has conflicting packed and align representation hints
|
|
|
|
i: i32
|
|
|
|
}
|
2017-01-14 16:49:29 -06:00
|
|
|
|
|
|
|
fn main() {}
|