diff options
| author | Nikita Popov <npopov@redhat.com> | 2023-08-15 11:30:36 +0200 |
|---|---|---|
| committer | Nikita Popov <npopov@redhat.com> | 2023-08-15 11:33:45 +0200 |
| commit | 62ca87f45d57b98c79b76d00a6d6a49fd28e3b1e (patch) | |
| tree | c232c282d828eecdbe5077add872aec56e12fb03 | |
| parent | 64cc56b31d9f0b624733afeb7465e93901257ebd (diff) | |
| download | rust-62ca87f45d57b98c79b76d00a6d6a49fd28e3b1e.tar.gz rust-62ca87f45d57b98c79b76d00a6d6a49fd28e3b1e.zip | |
Add test for #114691
| -rw-r--r-- | tests/ui/match/issue-114691.rs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/ui/match/issue-114691.rs b/tests/ui/match/issue-114691.rs new file mode 100644 index 00000000000..cc17d9ecf05 --- /dev/null +++ b/tests/ui/match/issue-114691.rs @@ -0,0 +1,39 @@ +// run-pass + +// This test used to be miscompiled by LLVM 17. +#![allow(dead_code)] + +enum Pass { + Opaque { + clear_color: [f32; 4], + with_depth_pre_pass: bool, + }, + Transparent, +} + +enum LoadOp { + Clear, + Load, +} + +#[inline(never)] +fn check(x: Option<LoadOp>) { + assert!(x.is_none()); +} + +#[inline(never)] +fn test(mode: Pass) { + check(match mode { + Pass::Opaque { + with_depth_pre_pass: true, + .. + } + | Pass::Transparent => None, + _ => Some(LoadOp::Clear), + }); +} + +fn main() { + println!("Hello, world!"); + test(Pass::Transparent); +} |
