Auto merge of #61881 - glaubitz:sparc64-ffi-abi, r=petrochenkov
librustc_codegen_llvm: Use repr(transparent) for bitflags over repr(C… …) (#61306) In order to make sure that Rust's bitflags types are passed the same way in the Rust ABI as they are in the C ABI, we need to use the attribute repr(transparent) over the repr(C) attribute for the single-field bitflags structs in in order to prevent ABI mismatches. Thanks to Michael Karcher for finding this bug.
This commit is contained in:
commit
799cf3f603
1 changed files with 2 additions and 2 deletions
|
|
@ -564,7 +564,7 @@ pub mod debuginfo {
|
|||
|
||||
// These values **must** match with LLVMRustDIFlags!!
|
||||
bitflags! {
|
||||
#[repr(C)]
|
||||
#[repr(transparent)]
|
||||
#[derive(Default)]
|
||||
pub struct DIFlags: ::libc::uint32_t {
|
||||
const FlagZero = 0;
|
||||
|
|
@ -593,7 +593,7 @@ pub mod debuginfo {
|
|||
|
||||
// These values **must** match with LLVMRustDISPFlags!!
|
||||
bitflags! {
|
||||
#[repr(C)]
|
||||
#[repr(transparent)]
|
||||
#[derive(Default)]
|
||||
pub struct DISPFlags: ::libc::uint32_t {
|
||||
const SPFlagZero = 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue