From e2ee4b84dbca45300749b37394d0965681f7ae7c Mon Sep 17 00:00:00 2001 From: Jules Bertholet Date: Sun, 3 May 2026 12:39:55 -0400 Subject: [PATCH] Distinguish `repr(C)` ZSTs from others in ABI computation --- compiler/rustc_abi/src/layout.rs | 11 ++ compiler/rustc_abi/src/layout/coroutine.rs | 1 + compiler/rustc_abi/src/layout/simple.rs | 5 + compiler/rustc_abi/src/lib.rs | 13 ++ compiler/rustc_target/src/callconv/powerpc.rs | 2 +- compiler/rustc_target/src/callconv/s390x.rs | 2 +- compiler/rustc_target/src/callconv/sparc64.rs | 2 +- .../rustc_target/src/callconv/x86_win64.rs | 26 ++-- library/core/src/primitive_docs.rs | 11 +- tests/codegen-llvm/abi-win64-zst.rs | 124 ++++++++++++++++-- tests/ui/abi/c-zst.aarch64-darwin.stderr | 2 + tests/ui/abi/c-zst.powerpc-linux.stderr | 15 +-- tests/ui/abi/c-zst.s390x-linux.stderr | 15 +-- tests/ui/abi/c-zst.sparc64-linux.stderr | 15 +-- tests/ui/abi/c-zst.x86_64-linux.stderr | 2 + .../ui/abi/c-zst.x86_64-pc-windows-gnu.stderr | 15 +-- tests/ui/abi/debug.generic.stderr | 24 ++++ tests/ui/abi/debug.loongarch64.stderr | 24 ++++ tests/ui/abi/debug.riscv64.stderr | 24 ++++ .../x86-64-sysv64-arg-ext.other.stderr | 12 ++ tests/ui/abi/pass-indirectly-attr.stderr | 4 + tests/ui/abi/sysv64-zst.stderr | 2 + .../pass-by-value-abi.aarch64.stderr | 2 + .../c-variadic/pass-by-value-abi.win.stderr | 2 + .../pass-by-value-abi.x86_64.stderr | 6 + .../enum-discriminant/wrapping_niche.stderr | 8 ++ tests/ui/layout/debug.stderr | 24 ++++ tests/ui/layout/hexagon-enum.stderr | 10 ++ ...-scalarpair-payload-might-be-uninit.stderr | 17 +++ .../issue-96185-overaligned-enum.stderr | 6 + tests/ui/layout/thumb-enum.stderr | 10 ++ .../layout/zero-sized-array-enum-niche.stderr | 13 ++ ...-variants.aarch64-unknown-linux-gnu.stderr | 8 ++ ...-c-dead-variants.armebv7r-none-eabi.stderr | 8 ++ ...-dead-variants.i686-pc-windows-msvc.stderr | 8 ++ ...d-variants.x86_64-unknown-linux-gnu.stderr | 8 ++ tests/ui/repr/repr-c-int-dead-variants.stderr | 8 ++ tests/ui/type/pattern_types/non_null.stderr | 5 + .../ui/type/pattern_types/or_patterns.stderr | 2 + .../type/pattern_types/range_patterns.stderr | 11 ++ 40 files changed, 428 insertions(+), 79 deletions(-) diff --git a/compiler/rustc_abi/src/layout.rs b/compiler/rustc_abi/src/layout.rs index 3aa00d14d39b1..c4862759d50f5 100644 --- a/compiler/rustc_abi/src/layout.rs +++ b/compiler/rustc_abi/src/layout.rs @@ -196,6 +196,7 @@ impl LayoutCalculator { size, max_repr_align: None, unadjusted_abi_align: element.align.abi, + repr_c: false, randomization_seed: element.randomization_seed.wrapping_add(Hash64::new(count)), }) } @@ -499,6 +500,9 @@ impl LayoutCalculator { return Err(LayoutCalculatorError::EmptyUnion); }; + let repr_c = + repr.c() || (repr.transparent() && only_variant.iter().any(|field| field.repr_c)); + let combined_seed = only_variant .iter() .map(|v| v.randomization_seed) @@ -514,6 +518,7 @@ impl LayoutCalculator { size: size.align_to(align), max_repr_align, unadjusted_abi_align, + repr_c, randomization_seed: combined_seed, }) } @@ -786,6 +791,7 @@ impl LayoutCalculator { align: AbiAlign::new(align), max_repr_align, unadjusted_abi_align, + repr_c: repr.c(), randomization_seed: combined_seed, }; @@ -1133,6 +1139,7 @@ impl LayoutCalculator { size, max_repr_align, unadjusted_abi_align, + repr_c: repr.c(), randomization_seed: combined_seed, }; @@ -1482,6 +1489,8 @@ impl LayoutCalculator { unadjusted_abi_align }; + let repr_c = repr.c() || (repr.transparent() && fields.iter().any(|field| field.repr_c)); + let seed = field_seed.wrapping_add(repr.field_shuffle_seed); Ok(LayoutData { @@ -1494,6 +1503,7 @@ impl LayoutCalculator { size, max_repr_align, unadjusted_abi_align, + repr_c, randomization_seed: seed, }) } @@ -1594,6 +1604,7 @@ where align: AbiAlign::new(align), max_repr_align: None, unadjusted_abi_align: elt.align.abi, + repr_c: false, randomization_seed: elt.randomization_seed.wrapping_add(Hash64::new(count)), }) } diff --git a/compiler/rustc_abi/src/layout/coroutine.rs b/compiler/rustc_abi/src/layout/coroutine.rs index 815cf1e28a08c..f31a2220ebf88 100644 --- a/compiler/rustc_abi/src/layout/coroutine.rs +++ b/compiler/rustc_abi/src/layout/coroutine.rs @@ -311,6 +311,7 @@ pub(super) fn layout< align, max_repr_align: None, unadjusted_abi_align: align.abi, + repr_c: false, randomization_seed: Default::default(), }) } diff --git a/compiler/rustc_abi/src/layout/simple.rs b/compiler/rustc_abi/src/layout/simple.rs index 3784611b157be..401a1b1ed60cb 100644 --- a/compiler/rustc_abi/src/layout/simple.rs +++ b/compiler/rustc_abi/src/layout/simple.rs @@ -25,6 +25,7 @@ impl LayoutData { size: Size::ZERO, max_repr_align: None, unadjusted_abi_align: dl.i8_align, + repr_c: false, randomization_seed: Hash64::new(0), } } @@ -42,6 +43,7 @@ impl LayoutData { size: Size::ZERO, max_repr_align: None, unadjusted_abi_align: dl.i8_align, + repr_c: false, randomization_seed: Hash64::ZERO, } } @@ -84,6 +86,7 @@ impl LayoutData { align, max_repr_align: None, unadjusted_abi_align: align.abi, + repr_c: false, randomization_seed: Hash64::new(randomization_seed), } } @@ -117,6 +120,7 @@ impl LayoutData { size, max_repr_align: None, unadjusted_abi_align: align, + repr_c: false, randomization_seed: Hash64::new(combined_seed), } } @@ -143,6 +147,7 @@ impl LayoutData { size: Size::ZERO, max_repr_align: None, unadjusted_abi_align: dl.i8_align, + repr_c: false, randomization_seed: Hash64::ZERO, } } diff --git a/compiler/rustc_abi/src/lib.rs b/compiler/rustc_abi/src/lib.rs index 3cc98bdd7e70e..ef0eec9a462dd 100644 --- a/compiler/rustc_abi/src/lib.rs +++ b/compiler/rustc_abi/src/lib.rs @@ -2142,6 +2142,11 @@ pub struct LayoutData { /// in some cases. pub unadjusted_abi_align: Align, + /// Whether this type is `repr(C)`, or a`repr(transparent)` wrapper around such. + /// Some C ABIs pass `repr(C)` ZSTs by pointer, but `repr(Rust)` ZSTs should always + /// be ignored. + pub repr_c: bool, + /// The randomization seed based on this type's own repr and its fields. /// /// Since randomization is toggled on a per-crate basis even crates that do not have randomization @@ -2170,6 +2175,12 @@ impl LayoutData { pub fn is_uninhabited(&self) -> bool { self.uninhabited } + + /// Returns `true` if this is a `repr(C)` type, + /// or an array of such, or a `repr(transparent)` wrapper around such + pub fn is_repr_c(&self) -> bool { + self.repr_c + } } impl fmt::Debug for LayoutData @@ -2191,6 +2202,7 @@ where variants, max_repr_align, unadjusted_abi_align, + repr_c, randomization_seed, } = self; f.debug_struct("Layout") @@ -2203,6 +2215,7 @@ where .field("variants", variants) .field("max_repr_align", max_repr_align) .field("unadjusted_abi_align", unadjusted_abi_align) + .field("repr_c", repr_c) .field("randomization_seed", randomization_seed) .finish() } diff --git a/compiler/rustc_target/src/callconv/powerpc.rs b/compiler/rustc_target/src/callconv/powerpc.rs index 2b6a104e1221d..1748cbf24c28d 100644 --- a/compiler/rustc_target/src/callconv/powerpc.rs +++ b/compiler/rustc_target/src/callconv/powerpc.rs @@ -19,7 +19,7 @@ where // powerpc-unknown-linux-{gnu,musl,uclibc} doesn't ignore ZSTs. if cx.target_spec().os == Os::Linux && matches!(cx.target_spec().env, Env::Gnu | Env::Musl | Env::Uclibc) - && arg.layout.is_zst() + && arg.layout.is_repr_c() { arg.make_indirect_from_ignore(); } diff --git a/compiler/rustc_target/src/callconv/s390x.rs b/compiler/rustc_target/src/callconv/s390x.rs index 581c1e2e862c5..bdbee7bf07ef7 100644 --- a/compiler/rustc_target/src/callconv/s390x.rs +++ b/compiler/rustc_target/src/callconv/s390x.rs @@ -31,7 +31,7 @@ where // s390x-unknown-linux-{gnu,musl,uclibc} doesn't ignore ZSTs. if cx.target_spec().os == Os::Linux && matches!(cx.target_spec().env, Env::Gnu | Env::Musl | Env::Uclibc) - && arg.layout.is_zst() + && arg.layout.is_repr_c() { arg.make_indirect_from_ignore(); } diff --git a/compiler/rustc_target/src/callconv/sparc64.rs b/compiler/rustc_target/src/callconv/sparc64.rs index 55f264d89bb4d..b6d5e325d028d 100644 --- a/compiler/rustc_target/src/callconv/sparc64.rs +++ b/compiler/rustc_target/src/callconv/sparc64.rs @@ -219,7 +219,7 @@ where continue; } if arg.is_ignore() { - if passes_zsts && arg.layout.is_zst() { + if passes_zsts && arg.layout.is_repr_c() { arg.make_indirect_from_ignore(); double_word_count += 1; } diff --git a/compiler/rustc_target/src/callconv/x86_win64.rs b/compiler/rustc_target/src/callconv/x86_win64.rs index cece9d032b53a..be2f75fd8ab5d 100644 --- a/compiler/rustc_target/src/callconv/x86_win64.rs +++ b/compiler/rustc_target/src/callconv/x86_win64.rs @@ -48,18 +48,25 @@ where } }; - if !fn_abi.ret.is_ignore() { + // Windows ABIs do not talk about ZST since such types do not exist in MSVC. + // However, clang and gcc allow ZST is their windows-gnu targets, and pass them by pointer indierction. + // We follow that for `repr(C)` ZSTs (and `repr(transparent)` wrappers around them), + // but `repr(Rust)` ones are always ignored (ensuring that `()` matches C `void`). + + if fn_abi.ret.is_ignore() { + if fn_abi.ret.layout.is_repr_c() { + fn_abi.ret.make_indirect_from_ignore(); + } + } else { fixup(&mut fn_abi.ret, true); } for arg in fn_abi.args.iter_mut() { - if arg.is_ignore() && arg.layout.is_zst() { - // Windows ABIs do not talk about ZST since such types do not exist in MSVC. - // In that sense we can do whatever we want here, and maybe we should throw an error - // (but of course that would be a massive breaking change now). - // We try to match clang and gcc (which allow ZST is their windows-gnu targets), so we - // pass ZST via pointer indirection. - arg.make_indirect_from_ignore(); + if arg.is_ignore() { + if arg.layout.is_repr_c() { + arg.make_indirect_from_ignore(); + } + continue; } if arg.layout.pass_indirectly_in_non_rustic_abis(cx) { @@ -68,7 +75,4 @@ where } fixup(arg, false); } - // FIXME: We should likely also do something about ZST return types, similar to above. - // However, that's non-trivial due to `()`. - // See . } diff --git a/library/core/src/primitive_docs.rs b/library/core/src/primitive_docs.rs index 48bf57356b575..6dbe0707a7152 100644 --- a/library/core/src/primitive_docs.rs +++ b/library/core/src/primitive_docs.rs @@ -1842,9 +1842,14 @@ mod prim_ref {} /// call will be valid ABI-wise. The callee receives the result of transmuting the function pointer /// from `fn()` to `fn(i32)`; that transmutation is itself a well-defined operation, it's just /// almost certainly UB to later call that function pointer.) -/// - Any two types with size 0 and alignment 1 are ABI-compatible. -/// - A `repr(transparent)` type `T` is ABI-compatible with its unique non-trivial field, i.e., the -/// unique field that doesn't have size 0 and alignment 1 (if there is such a field). +/// - Any two types fulfilling all the following conditions are ABI-compatible; +/// such types are said to have "trivial ABI": +/// - Size 0 +/// - Alignment 1 +/// - Not `repr(C)` +/// - Not a `repr(transparent)` wrapper around a type that fails to satisfy these conditions +/// - A `repr(transparent)` type is ABI-compatible with its unique field that does not have trivial ABI +/// (as defined above). If there is no such field, the type has trivial ABI. /// - `i32` is ABI-compatible with `NonZero`, and similar for all other integer types. /// - If `T` is guaranteed to be subject to the [null pointer /// optimization](option/index.html#representation), and `E` is an enum satisfying the following diff --git a/tests/codegen-llvm/abi-win64-zst.rs b/tests/codegen-llvm/abi-win64-zst.rs index e855b60ca4d26..0709bc660d51a 100644 --- a/tests/codegen-llvm/abi-win64-zst.rs +++ b/tests/codegen-llvm/abi-win64-zst.rs @@ -21,33 +21,129 @@ extern crate minicore; use minicore::*; -// Make sure the argument is always passed when explicitly requesting a Windows ABI. +#[repr(C)] +struct CMaybeZst; + +#[repr(transparent)] +struct CMaybeZst2((), CMaybeZst, ()); + +// Make sure the argument is always passed when explicitly requesting a Windows ABI, +// and it is `repr(C)` - but not if it is `repr(Rust)`. // Our goal here is to match clang: . -// CHECK: define win64cc void @pass_zst_win64(ptr {{[^,]*}}) +// CHECK: define win64cc void @pass_rust_zst_win64() +#[no_mangle] +extern "win64" fn pass_rust_zst_win64(_: ()) {} + +// CHECK: define win64cc void @pass_c_maybezst_win64(ptr {{[^,]*}}) +#[no_mangle] +extern "win64" fn pass_c_maybezst_win64(_: CMaybeZst) {} + +// CHECK: define win64cc void @pass_c_maybezst_2_win64(ptr {{[^,]*}}) +#[no_mangle] +extern "win64" fn pass_c_maybezst_2_win64(_: CMaybeZst2) {} + +// CHECK: define x86_vectorcallcc void @pass_rust_zst_vectorcall() +#[no_mangle] +extern "vectorcall" fn pass_rust_zst_vectorcall(_: ()) {} + +// CHECK: define x86_vectorcallcc void @pass_c_maybezst_vectorcall(ptr {{[^,]*}}) #[no_mangle] -extern "win64" fn pass_zst_win64(_: ()) {} +extern "vectorcall" fn pass_c_maybezst_vectorcall(_: CMaybeZst) {} -// CHECK: define x86_vectorcallcc void @pass_zst_vectorcall(ptr {{[^,]*}}) +// CHECK: define x86_vectorcallcc void @pass_c_maybezst_2_vectorcall(ptr {{[^,]*}}) #[no_mangle] -extern "vectorcall" fn pass_zst_vectorcall(_: ()) {} +extern "vectorcall" fn pass_c_maybezst_2_vectorcall(_: CMaybeZst2) {} -// windows-gnu: define void @pass_zst_fastcall(ptr {{[^,]*}}) -// windows-msvc: define void @pass_zst_fastcall(ptr {{[^,]*}}) +// windows-gnu: define void @pass_rust_zst_fastcall() +// windows-msvc: define void @pass_rust_zst_fastcall() #[no_mangle] #[cfg(windows)] // "fastcall" is not valid on 64bit Linux -extern "fastcall" fn pass_zst_fastcall(_: ()) {} +extern "fastcall" fn pass_rust_zst_fastcall(_: ()) {} + +// windows-gnu: define void @pass_c_maybezst_fastcall(ptr {{[^,]*}}) +// windows-msvc: define void @pass_c_maybezst_fastcall(ptr {{[^,]*}}) +#[no_mangle] +#[cfg(windows)] // "fastcall" is not valid on 64bit Linux +extern "fastcall" fn pass_c_maybezst_fastcall(_: CMaybeZst) {} + +// windows-gnu: define void @pass_c_maybezst_2_fastcall(ptr {{[^,]*}}) +// windows-msvc: define void @pass_c_maybezst_2_fastcall(ptr {{[^,]*}}) +#[no_mangle] +#[cfg(windows)] // "fastcall" is not valid on 64bit Linux +extern "fastcall" fn pass_c_maybezst_2_fastcall(_: CMaybeZst2) {} // The sysv64 ABI ignores ZST. -// CHECK: define x86_64_sysvcc void @pass_zst_sysv64() +// CHECK: define x86_64_sysvcc void @pass_rust_zst_sysv64() +#[no_mangle] +extern "sysv64" fn pass_rust_zst_sysv64(_: ()) {} + +// CHECK: define x86_64_sysvcc void @pass_c_maybezst_sysv64() +#[no_mangle] +extern "sysv64" fn pass_c_maybezst_sysv64(_: CMaybeZst) {} + +// CHECK: define x86_64_sysvcc void @pass_c_maybezst_2_sysv64() #[no_mangle] -extern "sysv64" fn pass_zst_sysv64(_: ()) {} +extern "sysv64" fn pass_c_maybezst_2_sysv64(_: CMaybeZst2) {} // For `extern "C"` functions, ZST are ignored on Linux put passed on Windows. -// linux: define void @pass_zst_c() -// windows-msvc: define void @pass_zst_c(ptr {{[^,]*}}) -// windows-gnu: define void @pass_zst_c(ptr {{[^,]*}}) +// linux: define void @pass_rust_zst_c() +// windows-msvc: define void @pass_rust_zst_c() +// windows-gnu: define void @pass_rust_zst_c() +#[no_mangle] +extern "C" fn pass_rust_zst_c(_: ()) {} + +// linux: define void @pass_c_maybezst_c() +// windows-msvc: define void @pass_c_maybezst_c(ptr {{[^,]*}}) +// windows-gnu: define void @pass_c_maybezst_c(ptr {{[^,]*}}) +#[no_mangle] +extern "C" fn pass_c_maybezst_c(_: CMaybeZst) {} + +// linux: define void @pass_c_maybezst_2_c() +// windows-msvc: define void @pass_c_maybezst_2_c(ptr {{[^,]*}}) +// windows-gnu: define void @pass_c_maybezst_2_c(ptr {{[^,]*}}) +#[no_mangle] +extern "C" fn pass_c_maybezst_2_c(_: CMaybeZst2) {} + +// Now check `repr(C)` return types. +// Again, we seek to match clang: + +// CHECK: define win64cc void @ret_c_maybezst_win64(ptr {{[^,]*}}) +#[no_mangle] +extern "win64" fn ret_c_maybezst_win64() -> CMaybeZst { + CMaybeZst +} + +// CHECK: define x86_vectorcallcc void @ret_c_maybezst_vectorcall(ptr {{[^,]*}}) +#[no_mangle] +extern "vectorcall" fn ret_c_maybezst_vectorcall() -> CMaybeZst { + CMaybeZst +} + +// windows-gnu: define void @ret_c_maybezst_fastcall(ptr {{[^,]*}}) +// windows-msvc: define void @ret_c_maybezst_fastcall(ptr {{[^,]*}}) +#[no_mangle] +#[cfg(windows)] // "fastcall" is not valid on 64bit Linux +extern "fastcall" fn ret_c_maybezst_fastcall() -> CMaybeZst { + CMaybeZst +} + +// The sysv64 ABI ignores ZST. + +// CHECK: define x86_64_sysvcc void @ret_c_maybezst_sysv64() +#[no_mangle] +extern "sysv64" fn ret_c_maybezst_sysv64() -> CMaybeZst { + CMaybeZst +} + +// For `extern "C"` functions, ZST are ignored on Linux put reted on Windows. + +// linux: define void @ret_c_maybezst_c() +// windows-msvc: define void @ret_c_maybezst_c(ptr {{[^,]*}}) +// windows-gnu: define void @ret_c_maybezst_c(ptr {{[^,]*}}) #[no_mangle] -extern "C" fn pass_zst_c(_: ()) {} +extern "C" fn ret_c_maybezst_c() -> CMaybeZst { + CMaybeZst +} diff --git a/tests/ui/abi/c-zst.aarch64-darwin.stderr b/tests/ui/abi/c-zst.aarch64-darwin.stderr index 6d2ac90c0c975..a57bb74f9f2c3 100644 --- a/tests/ui/abi/c-zst.aarch64-darwin.stderr +++ b/tests/ui/abi/c-zst.aarch64-darwin.stderr @@ -22,6 +22,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, @@ -50,6 +51,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, diff --git a/tests/ui/abi/c-zst.powerpc-linux.stderr b/tests/ui/abi/c-zst.powerpc-linux.stderr index f297aa984dd2e..a57bb74f9f2c3 100644 --- a/tests/ui/abi/c-zst.powerpc-linux.stderr +++ b/tests/ui/abi/c-zst.powerpc-linux.stderr @@ -22,21 +22,11 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, - mode: Indirect { - attrs: ArgAttributes { - regular: CapturesAddress | NoAlias | NonNull | NoUndef, - arg_ext: None, - pointee_size: Size(0 bytes), - pointee_align: Some( - Align(1 bytes), - ), - }, - meta_attrs: None, - on_stack: false, - }, + mode: Ignore, }, ], ret: ArgAbi { @@ -61,6 +51,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, diff --git a/tests/ui/abi/c-zst.s390x-linux.stderr b/tests/ui/abi/c-zst.s390x-linux.stderr index f297aa984dd2e..a57bb74f9f2c3 100644 --- a/tests/ui/abi/c-zst.s390x-linux.stderr +++ b/tests/ui/abi/c-zst.s390x-linux.stderr @@ -22,21 +22,11 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, - mode: Indirect { - attrs: ArgAttributes { - regular: CapturesAddress | NoAlias | NonNull | NoUndef, - arg_ext: None, - pointee_size: Size(0 bytes), - pointee_align: Some( - Align(1 bytes), - ), - }, - meta_attrs: None, - on_stack: false, - }, + mode: Ignore, }, ], ret: ArgAbi { @@ -61,6 +51,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, diff --git a/tests/ui/abi/c-zst.sparc64-linux.stderr b/tests/ui/abi/c-zst.sparc64-linux.stderr index f297aa984dd2e..a57bb74f9f2c3 100644 --- a/tests/ui/abi/c-zst.sparc64-linux.stderr +++ b/tests/ui/abi/c-zst.sparc64-linux.stderr @@ -22,21 +22,11 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, - mode: Indirect { - attrs: ArgAttributes { - regular: CapturesAddress | NoAlias | NonNull | NoUndef, - arg_ext: None, - pointee_size: Size(0 bytes), - pointee_align: Some( - Align(1 bytes), - ), - }, - meta_attrs: None, - on_stack: false, - }, + mode: Ignore, }, ], ret: ArgAbi { @@ -61,6 +51,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, diff --git a/tests/ui/abi/c-zst.x86_64-linux.stderr b/tests/ui/abi/c-zst.x86_64-linux.stderr index 6d2ac90c0c975..a57bb74f9f2c3 100644 --- a/tests/ui/abi/c-zst.x86_64-linux.stderr +++ b/tests/ui/abi/c-zst.x86_64-linux.stderr @@ -22,6 +22,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, @@ -50,6 +51,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, diff --git a/tests/ui/abi/c-zst.x86_64-pc-windows-gnu.stderr b/tests/ui/abi/c-zst.x86_64-pc-windows-gnu.stderr index f297aa984dd2e..a57bb74f9f2c3 100644 --- a/tests/ui/abi/c-zst.x86_64-pc-windows-gnu.stderr +++ b/tests/ui/abi/c-zst.x86_64-pc-windows-gnu.stderr @@ -22,21 +22,11 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, - mode: Indirect { - attrs: ArgAttributes { - regular: CapturesAddress | NoAlias | NonNull | NoUndef, - arg_ext: None, - pointee_size: Size(0 bytes), - pointee_align: Some( - Align(1 bytes), - ), - }, - meta_attrs: None, - on_stack: false, - }, + mode: Ignore, }, ], ret: ArgAbi { @@ -61,6 +51,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, diff --git a/tests/ui/abi/debug.generic.stderr b/tests/ui/abi/debug.generic.stderr index b154c3fa201e5..a1d3ea29a2b6e 100644 --- a/tests/ui/abi/debug.generic.stderr +++ b/tests/ui/abi/debug.generic.stderr @@ -58,6 +58,7 @@ error: fn_abi_of(test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -105,6 +106,7 @@ error: fn_abi_of(test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -163,6 +165,7 @@ error: fn_abi_of(TestFnPtr) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -201,6 +204,7 @@ error: fn_abi_of(TestFnPtr) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -251,6 +255,7 @@ error: fn_abi_of(test_generic) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -286,6 +291,7 @@ error: fn_abi_of(test_generic) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -335,6 +341,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -370,6 +377,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -407,6 +415,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -442,6 +451,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -482,6 +492,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -521,6 +532,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -555,6 +567,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -594,6 +607,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -636,6 +650,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -671,6 +686,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -708,6 +724,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -743,6 +760,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -786,6 +804,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -821,6 +840,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -858,6 +878,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -893,6 +914,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -961,6 +983,7 @@ error: fn_abi_of(assoc_test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -998,6 +1021,7 @@ error: fn_abi_of(assoc_test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, diff --git a/tests/ui/abi/debug.loongarch64.stderr b/tests/ui/abi/debug.loongarch64.stderr index 68bcd736e47ce..6bd429b6d9f92 100644 --- a/tests/ui/abi/debug.loongarch64.stderr +++ b/tests/ui/abi/debug.loongarch64.stderr @@ -58,6 +58,7 @@ error: fn_abi_of(test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -105,6 +106,7 @@ error: fn_abi_of(test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -163,6 +165,7 @@ error: fn_abi_of(TestFnPtr) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -201,6 +204,7 @@ error: fn_abi_of(TestFnPtr) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -251,6 +255,7 @@ error: fn_abi_of(test_generic) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -286,6 +291,7 @@ error: fn_abi_of(test_generic) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -335,6 +341,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -370,6 +377,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -407,6 +415,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -442,6 +451,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -482,6 +492,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -521,6 +532,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -555,6 +567,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -594,6 +607,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -636,6 +650,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -671,6 +686,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -708,6 +724,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -743,6 +760,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -786,6 +804,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -821,6 +840,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -858,6 +878,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -893,6 +914,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -961,6 +983,7 @@ error: fn_abi_of(assoc_test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -998,6 +1021,7 @@ error: fn_abi_of(assoc_test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, diff --git a/tests/ui/abi/debug.riscv64.stderr b/tests/ui/abi/debug.riscv64.stderr index 68bcd736e47ce..6bd429b6d9f92 100644 --- a/tests/ui/abi/debug.riscv64.stderr +++ b/tests/ui/abi/debug.riscv64.stderr @@ -58,6 +58,7 @@ error: fn_abi_of(test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -105,6 +106,7 @@ error: fn_abi_of(test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -163,6 +165,7 @@ error: fn_abi_of(TestFnPtr) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -201,6 +204,7 @@ error: fn_abi_of(TestFnPtr) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -251,6 +255,7 @@ error: fn_abi_of(test_generic) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -286,6 +291,7 @@ error: fn_abi_of(test_generic) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -335,6 +341,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -370,6 +377,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -407,6 +415,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -442,6 +451,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -482,6 +492,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -521,6 +532,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -555,6 +567,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -594,6 +607,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -636,6 +650,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -671,6 +686,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -708,6 +724,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -743,6 +760,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -786,6 +804,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -821,6 +840,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -858,6 +878,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -893,6 +914,7 @@ error: ABIs are not compatible }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -961,6 +983,7 @@ error: fn_abi_of(assoc_test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, @@ -998,6 +1021,7 @@ error: fn_abi_of(assoc_test) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: $SEED, }, }, diff --git a/tests/ui/abi/numbers-arithmetic/x86-64-sysv64-arg-ext.other.stderr b/tests/ui/abi/numbers-arithmetic/x86-64-sysv64-arg-ext.other.stderr index 9bb2ab45d9841..449fc4a0744f4 100644 --- a/tests/ui/abi/numbers-arithmetic/x86-64-sysv64-arg-ext.other.stderr +++ b/tests/ui/abi/numbers-arithmetic/x86-64-sysv64-arg-ext.other.stderr @@ -25,6 +25,7 @@ error: fn_abi_of(i8) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: 71776123356184577, }, }, @@ -63,6 +64,7 @@ error: fn_abi_of(i8) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: 71776123356184577, }, }, @@ -114,6 +116,7 @@ error: fn_abi_of(u8) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: 71776127651151873, }, }, @@ -152,6 +155,7 @@ error: fn_abi_of(u8) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: 71776127651151873, }, }, @@ -203,6 +207,7 @@ error: fn_abi_of(i16) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 18446462603027808258, }, }, @@ -241,6 +246,7 @@ error: fn_abi_of(i16) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 18446462603027808258, }, }, @@ -292,6 +298,7 @@ error: fn_abi_of(u16) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 18446462607322775554, }, }, @@ -330,6 +337,7 @@ error: fn_abi_of(u16) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 18446462607322775554, }, }, @@ -381,6 +389,7 @@ error: fn_abi_of(i32) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: 18446462603027873795, }, }, @@ -419,6 +428,7 @@ error: fn_abi_of(i32) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: 18446462603027873795, }, }, @@ -470,6 +480,7 @@ error: fn_abi_of(u32) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: 18446462607322841091, }, }, @@ -508,6 +519,7 @@ error: fn_abi_of(u32) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: 18446462607322841091, }, }, diff --git a/tests/ui/abi/pass-indirectly-attr.stderr b/tests/ui/abi/pass-indirectly-attr.stderr index d8cc39cb2e4e3..e73ebc9dca295 100644 --- a/tests/ui/abi/pass-indirectly-attr.stderr +++ b/tests/ui/abi/pass-indirectly-attr.stderr @@ -35,6 +35,7 @@ error: fn_abi_of(extern_c) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, }, @@ -74,6 +75,7 @@ error: fn_abi_of(extern_c) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, }, @@ -117,6 +119,7 @@ error: fn_abi_of(extern_rust) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, }, @@ -174,6 +177,7 @@ error: fn_abi_of(extern_rust) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, }, diff --git a/tests/ui/abi/sysv64-zst.stderr b/tests/ui/abi/sysv64-zst.stderr index 82d3793c35328..5fc85190db529 100644 --- a/tests/ui/abi/sysv64-zst.stderr +++ b/tests/ui/abi/sysv64-zst.stderr @@ -22,6 +22,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, @@ -50,6 +51,7 @@ error: fn_abi_of(pass_zst) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: $SOME_ALIGN, + repr_c: false, randomization_seed: 0, }, }, diff --git a/tests/ui/c-variadic/pass-by-value-abi.aarch64.stderr b/tests/ui/c-variadic/pass-by-value-abi.aarch64.stderr index 584416f58f861..c391c14ab8528 100644 --- a/tests/ui/c-variadic/pass-by-value-abi.aarch64.stderr +++ b/tests/ui/c-variadic/pass-by-value-abi.aarch64.stderr @@ -22,6 +22,7 @@ error: fn_abi_of(take_va_list) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, }, @@ -61,6 +62,7 @@ error: fn_abi_of(take_va_list) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, }, diff --git a/tests/ui/c-variadic/pass-by-value-abi.win.stderr b/tests/ui/c-variadic/pass-by-value-abi.win.stderr index b8e3f699b30e8..ec8c4e8b62975 100644 --- a/tests/ui/c-variadic/pass-by-value-abi.win.stderr +++ b/tests/ui/c-variadic/pass-by-value-abi.win.stderr @@ -29,6 +29,7 @@ error: fn_abi_of(take_va_list) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, }, @@ -64,6 +65,7 @@ error: fn_abi_of(take_va_list) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, }, diff --git a/tests/ui/c-variadic/pass-by-value-abi.x86_64.stderr b/tests/ui/c-variadic/pass-by-value-abi.x86_64.stderr index b5e0e8589af16..6aed40c92e92d 100644 --- a/tests/ui/c-variadic/pass-by-value-abi.x86_64.stderr +++ b/tests/ui/c-variadic/pass-by-value-abi.x86_64.stderr @@ -22,6 +22,7 @@ error: fn_abi_of(take_va_list) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, }, @@ -61,6 +62,7 @@ error: fn_abi_of(take_va_list) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, }, @@ -100,6 +102,7 @@ error: fn_abi_of(take_va_list_sysv64) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, }, @@ -139,6 +142,7 @@ error: fn_abi_of(take_va_list_sysv64) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, }, @@ -180,6 +184,7 @@ error: fn_abi_of(take_va_list_win64) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, }, @@ -219,6 +224,7 @@ error: fn_abi_of(take_va_list_win64) = FnAbi { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, }, diff --git a/tests/ui/enum-discriminant/wrapping_niche.stderr b/tests/ui/enum-discriminant/wrapping_niche.stderr index 9b97ad4aeac7e..d6bdf77a3e041 100644 --- a/tests/ui/enum-discriminant/wrapping_niche.stderr +++ b/tests/ui/enum-discriminant/wrapping_niche.stderr @@ -61,6 +61,7 @@ error: layout_of(UnsignedAroundZero) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 9885373149222004003, }, Layout { @@ -82,6 +83,7 @@ error: layout_of(UnsignedAroundZero) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 9885373149222004003, }, Layout { @@ -103,12 +105,14 @@ error: layout_of(UnsignedAroundZero) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 9885373149222004003, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 2648004449468912780, } --> $DIR/wrapping_niche.rs:8:1 @@ -179,6 +183,7 @@ error: layout_of(SignedAroundZero) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 2684536712112553499, }, Layout { @@ -200,6 +205,7 @@ error: layout_of(SignedAroundZero) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 2684536712112553499, }, Layout { @@ -221,12 +227,14 @@ error: layout_of(SignedAroundZero) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 2684536712112553499, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: 10738146848450213996, } --> $DIR/wrapping_niche.rs:17:1 diff --git a/tests/ui/layout/debug.stderr b/tests/ui/layout/debug.stderr index bfd2f7ec95da1..6f1fa4089f7e2 100644 --- a/tests/ui/layout/debug.stderr +++ b/tests/ui/layout/debug.stderr @@ -77,6 +77,7 @@ error: layout_of(E) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -106,12 +107,14 @@ error: layout_of(E) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:8:1 @@ -159,6 +162,7 @@ error: layout_of(S) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:11:1 @@ -184,6 +188,7 @@ error: layout_of(U) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:14:1 @@ -278,6 +283,7 @@ error: layout_of(Result) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -316,12 +322,14 @@ error: layout_of(Result) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:17:1 @@ -351,6 +359,7 @@ error: layout_of(i32) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:20:1 @@ -376,6 +385,7 @@ error: layout_of(V) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:27:1 @@ -401,6 +411,7 @@ error: layout_of(W) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:33:1 @@ -426,6 +437,7 @@ error: layout_of(Y) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:39:1 @@ -451,6 +463,7 @@ error: layout_of(P1) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:46:1 @@ -476,6 +489,7 @@ error: layout_of(P2) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:50:1 @@ -501,6 +515,7 @@ error: layout_of(P3) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:58:1 @@ -526,6 +541,7 @@ error: layout_of(P4) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:62:1 @@ -556,6 +572,7 @@ error: layout_of(P5) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:66:1 @@ -586,6 +603,7 @@ error: layout_of(MaybeUninit) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:69:1 @@ -681,6 +699,7 @@ error: layout_of(Option) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -721,12 +740,14 @@ error: layout_of(Option) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:93:1 @@ -801,6 +822,7 @@ error: layout_of(Option) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -841,12 +863,14 @@ error: layout_of(Option) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/debug.rs:96:1 diff --git a/tests/ui/layout/hexagon-enum.stderr b/tests/ui/layout/hexagon-enum.stderr index 20e0a8642a66f..808f2bdab1a5b 100644 --- a/tests/ui/layout/hexagon-enum.stderr +++ b/tests/ui/layout/hexagon-enum.stderr @@ -61,12 +61,14 @@ error: layout_of(A) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/hexagon-enum.rs:19:1 @@ -137,12 +139,14 @@ error: layout_of(B) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/hexagon-enum.rs:23:1 @@ -213,12 +217,14 @@ error: layout_of(C) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/hexagon-enum.rs:27:1 @@ -289,12 +295,14 @@ error: layout_of(P) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/hexagon-enum.rs:31:1 @@ -365,12 +373,14 @@ error: layout_of(T) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/hexagon-enum.rs:37:1 diff --git a/tests/ui/layout/issue-96158-scalarpair-payload-might-be-uninit.stderr b/tests/ui/layout/issue-96158-scalarpair-payload-might-be-uninit.stderr index 61cfcbdc07f75..2108bc1c1791a 100644 --- a/tests/ui/layout/issue-96158-scalarpair-payload-might-be-uninit.stderr +++ b/tests/ui/layout/issue-96158-scalarpair-payload-might-be-uninit.stderr @@ -83,6 +83,7 @@ error: layout_of(MissingPayloadField) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -104,12 +105,14 @@ error: layout_of(MissingPayloadField) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/issue-96158-scalarpair-payload-might-be-uninit.rs:17:1 @@ -204,6 +207,7 @@ error: layout_of(CommonPayloadField) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -242,12 +246,14 @@ error: layout_of(CommonPayloadField) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/issue-96158-scalarpair-payload-might-be-uninit.rs:26:1 @@ -340,6 +346,7 @@ error: layout_of(CommonPayloadFieldIsMaybeUninit) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -377,12 +384,14 @@ error: layout_of(CommonPayloadFieldIsMaybeUninit) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/issue-96158-scalarpair-payload-might-be-uninit.rs:34:1 @@ -491,6 +500,7 @@ error: layout_of(NicheFirst) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -512,6 +522,7 @@ error: layout_of(NicheFirst) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -533,12 +544,14 @@ error: layout_of(NicheFirst) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/issue-96158-scalarpair-payload-might-be-uninit.rs:42:1 @@ -647,6 +660,7 @@ error: layout_of(NicheSecond) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -668,6 +682,7 @@ error: layout_of(NicheSecond) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -689,12 +704,14 @@ error: layout_of(NicheSecond) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/issue-96158-scalarpair-payload-might-be-uninit.rs:51:1 diff --git a/tests/ui/layout/issue-96185-overaligned-enum.stderr b/tests/ui/layout/issue-96185-overaligned-enum.stderr index 64e2f42c042f1..afc2daba0d8f3 100644 --- a/tests/ui/layout/issue-96185-overaligned-enum.stderr +++ b/tests/ui/layout/issue-96185-overaligned-enum.stderr @@ -57,6 +57,7 @@ error: layout_of(Aligned1) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -80,6 +81,7 @@ error: layout_of(Aligned1) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], @@ -88,6 +90,7 @@ error: layout_of(Aligned1) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/issue-96185-overaligned-enum.rs:9:1 @@ -160,6 +163,7 @@ error: layout_of(Aligned2) = Layout { Align(1 bytes), ), unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -183,6 +187,7 @@ error: layout_of(Aligned2) = Layout { Align(1 bytes), ), unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], @@ -191,6 +196,7 @@ error: layout_of(Aligned2) = Layout { Align(1 bytes), ), unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/issue-96185-overaligned-enum.rs:17:1 diff --git a/tests/ui/layout/thumb-enum.stderr b/tests/ui/layout/thumb-enum.stderr index a6e603652123b..f893a1d697466 100644 --- a/tests/ui/layout/thumb-enum.stderr +++ b/tests/ui/layout/thumb-enum.stderr @@ -61,12 +61,14 @@ error: layout_of(A) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/thumb-enum.rs:19:1 @@ -137,12 +139,14 @@ error: layout_of(B) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/thumb-enum.rs:23:1 @@ -213,12 +217,14 @@ error: layout_of(C) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/thumb-enum.rs:27:1 @@ -289,12 +295,14 @@ error: layout_of(P) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/thumb-enum.rs:31:1 @@ -365,12 +373,14 @@ error: layout_of(T) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/thumb-enum.rs:37:1 diff --git a/tests/ui/layout/zero-sized-array-enum-niche.stderr b/tests/ui/layout/zero-sized-array-enum-niche.stderr index a29586f3bb2fa..cd15034f5271b 100644 --- a/tests/ui/layout/zero-sized-array-enum-niche.stderr +++ b/tests/ui/layout/zero-sized-array-enum-niche.stderr @@ -59,6 +59,7 @@ error: layout_of(Result<[u32; 0], bool>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -93,12 +94,14 @@ error: layout_of(Result<[u32; 0], bool>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/zero-sized-array-enum-niche.rs:14:1 @@ -167,6 +170,7 @@ error: layout_of(MultipleAlignments) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(2 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -192,6 +196,7 @@ error: layout_of(MultipleAlignments) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -226,12 +231,14 @@ error: layout_of(MultipleAlignments) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/zero-sized-array-enum-niche.rs:22:1 @@ -300,6 +307,7 @@ error: layout_of(Result<[u32; 0], Packed>>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -334,12 +342,14 @@ error: layout_of(Result<[u32; 0], Packed>>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/zero-sized-array-enum-niche.rs:38:1 @@ -412,6 +422,7 @@ error: layout_of(Result<[u32; 0], Packed>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -446,12 +457,14 @@ error: layout_of(Result<[u32; 0], Packed>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/zero-sized-array-enum-niche.rs:45:1 diff --git a/tests/ui/repr/repr-c-dead-variants.aarch64-unknown-linux-gnu.stderr b/tests/ui/repr/repr-c-dead-variants.aarch64-unknown-linux-gnu.stderr index 62f6ec92d493c..d07ddca933596 100644 --- a/tests/ui/repr/repr-c-dead-variants.aarch64-unknown-linux-gnu.stderr +++ b/tests/ui/repr/repr-c-dead-variants.aarch64-unknown-linux-gnu.stderr @@ -71,12 +71,14 @@ error: layout_of(Univariant) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:44:1 @@ -169,6 +171,7 @@ error: layout_of(TwoVariants) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -206,12 +209,14 @@ error: layout_of(TwoVariants) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:51:1 @@ -284,6 +289,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -309,6 +315,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, ], @@ -317,6 +324,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:63:1 diff --git a/tests/ui/repr/repr-c-dead-variants.armebv7r-none-eabi.stderr b/tests/ui/repr/repr-c-dead-variants.armebv7r-none-eabi.stderr index 3e0efad974cd2..30839069f9dfb 100644 --- a/tests/ui/repr/repr-c-dead-variants.armebv7r-none-eabi.stderr +++ b/tests/ui/repr/repr-c-dead-variants.armebv7r-none-eabi.stderr @@ -71,12 +71,14 @@ error: layout_of(Univariant) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:44:1 @@ -169,6 +171,7 @@ error: layout_of(TwoVariants) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -206,12 +209,14 @@ error: layout_of(TwoVariants) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:51:1 @@ -284,6 +289,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -309,6 +315,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, ], @@ -317,6 +324,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:63:1 diff --git a/tests/ui/repr/repr-c-dead-variants.i686-pc-windows-msvc.stderr b/tests/ui/repr/repr-c-dead-variants.i686-pc-windows-msvc.stderr index 62f6ec92d493c..d07ddca933596 100644 --- a/tests/ui/repr/repr-c-dead-variants.i686-pc-windows-msvc.stderr +++ b/tests/ui/repr/repr-c-dead-variants.i686-pc-windows-msvc.stderr @@ -71,12 +71,14 @@ error: layout_of(Univariant) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:44:1 @@ -169,6 +171,7 @@ error: layout_of(TwoVariants) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -206,12 +209,14 @@ error: layout_of(TwoVariants) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:51:1 @@ -284,6 +289,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -309,6 +315,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, ], @@ -317,6 +324,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:63:1 diff --git a/tests/ui/repr/repr-c-dead-variants.x86_64-unknown-linux-gnu.stderr b/tests/ui/repr/repr-c-dead-variants.x86_64-unknown-linux-gnu.stderr index 62f6ec92d493c..d07ddca933596 100644 --- a/tests/ui/repr/repr-c-dead-variants.x86_64-unknown-linux-gnu.stderr +++ b/tests/ui/repr/repr-c-dead-variants.x86_64-unknown-linux-gnu.stderr @@ -71,12 +71,14 @@ error: layout_of(Univariant) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:44:1 @@ -169,6 +171,7 @@ error: layout_of(TwoVariants) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -206,12 +209,14 @@ error: layout_of(TwoVariants) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:51:1 @@ -284,6 +289,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -309,6 +315,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, ], @@ -317,6 +324,7 @@ error: layout_of(DeadBranchHasOtherField) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-dead-variants.rs:63:1 diff --git a/tests/ui/repr/repr-c-int-dead-variants.stderr b/tests/ui/repr/repr-c-int-dead-variants.stderr index b25e4a9b7b6f5..2c6492a1e27ce 100644 --- a/tests/ui/repr/repr-c-int-dead-variants.stderr +++ b/tests/ui/repr/repr-c-int-dead-variants.stderr @@ -71,12 +71,14 @@ error: layout_of(UnivariantU8) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-int-dead-variants.rs:15:1 @@ -169,6 +171,7 @@ error: layout_of(TwoVariantsU8) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -206,12 +209,14 @@ error: layout_of(TwoVariantsU8) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-int-dead-variants.rs:22:1 @@ -284,6 +289,7 @@ error: layout_of(DeadBranchHasOtherFieldU8) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, Layout { @@ -309,6 +315,7 @@ error: layout_of(DeadBranchHasOtherFieldU8) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, }, ], @@ -317,6 +324,7 @@ error: layout_of(DeadBranchHasOtherFieldU8) = Layout { Align(8 bytes), ), unadjusted_abi_align: Align(8 bytes), + repr_c: true, randomization_seed: $SEED, } --> $DIR/repr-c-int-dead-variants.rs:34:1 diff --git a/tests/ui/type/pattern_types/non_null.stderr b/tests/ui/type/pattern_types/non_null.stderr index 9f27be86bff44..6b7f3bc59d2ff 100644 --- a/tests/ui/type/pattern_types/non_null.stderr +++ b/tests/ui/type/pattern_types/non_null.stderr @@ -38,6 +38,7 @@ error: layout_of((*const T) is !null) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/non_null.rs:11:1 @@ -105,6 +106,7 @@ error: layout_of(Option<(*const ()) is !null>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -147,12 +149,14 @@ error: layout_of(Option<(*const ()) is !null>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/non_null.rs:14:1 @@ -207,6 +211,7 @@ error: layout_of((*const [u8]) is !null) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(8 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/non_null.rs:17:1 diff --git a/tests/ui/type/pattern_types/or_patterns.stderr b/tests/ui/type/pattern_types/or_patterns.stderr index 7206c570187b4..ef198599ccdd6 100644 --- a/tests/ui/type/pattern_types/or_patterns.stderr +++ b/tests/ui/type/pattern_types/or_patterns.stderr @@ -77,6 +77,7 @@ error: layout_of((i8) is (i8::MIN..=-1 | 1..)) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/or_patterns.rs:17:1 @@ -122,6 +123,7 @@ error: layout_of((i8) is (i8::MIN..=-2 | 0..)) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/or_patterns.rs:21:1 diff --git a/tests/ui/type/pattern_types/range_patterns.stderr b/tests/ui/type/pattern_types/range_patterns.stderr index d0dad5648d76f..e80855414b6bd 100644 --- a/tests/ui/type/pattern_types/range_patterns.stderr +++ b/tests/ui/type/pattern_types/range_patterns.stderr @@ -36,6 +36,7 @@ error: layout_of(NonZero) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/range_patterns.rs:11:1 @@ -81,6 +82,7 @@ error: layout_of((u32) is 1..) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/range_patterns.rs:13:1 @@ -146,6 +148,7 @@ error: layout_of(Option<(u32) is 1..>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -186,12 +189,14 @@ error: layout_of(Option<(u32) is 1..>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/range_patterns.rs:15:1 @@ -257,6 +262,7 @@ error: layout_of(Option>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, }, Layout { @@ -297,12 +303,14 @@ error: layout_of(Option>) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, }, ], }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/range_patterns.rs:17:1 @@ -348,6 +356,7 @@ error: layout_of(NonZeroU32New) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(4 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/range_patterns.rs:19:1 @@ -421,6 +430,7 @@ error: layout_of((i8) is -10..=10) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/range_patterns.rs:32:1 @@ -466,6 +476,7 @@ error: layout_of((i8) is i8::MIN..=0) = Layout { }, max_repr_align: None, unadjusted_abi_align: Align(1 bytes), + repr_c: false, randomization_seed: $SEED, } --> $DIR/range_patterns.rs:35:1