diff options
Diffstat (limited to 'tests/ui/union/union-lint-dead-code.rs')
-rw-r--r-- | tests/ui/union/union-lint-dead-code.rs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/ui/union/union-lint-dead-code.rs b/tests/ui/union/union-lint-dead-code.rs new file mode 100644 index 000000000..65aaf0a1d --- /dev/null +++ b/tests/ui/union/union-lint-dead-code.rs @@ -0,0 +1,18 @@ +// revisions: mirunsafeck thirunsafeck +// [thirunsafeck]compile-flags: -Z thir-unsafeck + +#![deny(dead_code)] + +union Foo { + x: usize, + b: bool, //~ ERROR: field `b` is never read + _unused: u16, +} + +fn field_read(f: Foo) -> usize { + unsafe { f.x } +} + +fn main() { + let _ = field_read(Foo { x: 2 }); +} |