From 218caa410aa38c29984be31a5229b9fa717560ee Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 14:19:13 +0200 Subject: Merging upstream version 1.68.2+dfsg1. Signed-off-by: Daniel Baumann --- tests/ui/consts/issue-79690.rs | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 tests/ui/consts/issue-79690.rs (limited to 'tests/ui/consts/issue-79690.rs') diff --git a/tests/ui/consts/issue-79690.rs b/tests/ui/consts/issue-79690.rs new file mode 100644 index 000000000..56747bf5a --- /dev/null +++ b/tests/ui/consts/issue-79690.rs @@ -0,0 +1,33 @@ +// ignore-32bit +// This test gives a different error on 32-bit architectures. +// stderr-per-bitwidth + +union Transmute { + t: T, + u: U, +} +trait Bar { + fn bar(&self) -> u32; +} +struct Foo { + foo: u32, + bar: bool, +} +impl Bar for Foo { + fn bar(&self) -> u32 { + self.foo + } +} +#[derive(Copy, Clone)] +struct Fat<'a>(&'a Foo, &'static VTable); +struct VTable { + size: Foo, +} +const FOO: &dyn Bar = &Foo { + foo: 128, + bar: false, +}; +const G: Fat = unsafe { Transmute { t: FOO }.u }; +//~^ ERROR it is undefined behavior to use this value + +fn main() {} -- cgit v1.2.3