diff options
Diffstat (limited to 'src/test/ui/mir/issue-76740-copy-propagation.rs')
-rw-r--r-- | src/test/ui/mir/issue-76740-copy-propagation.rs | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/src/test/ui/mir/issue-76740-copy-propagation.rs b/src/test/ui/mir/issue-76740-copy-propagation.rs deleted file mode 100644 index 1d4ec1176..000000000 --- a/src/test/ui/mir/issue-76740-copy-propagation.rs +++ /dev/null @@ -1,30 +0,0 @@ -// Regression test for issue #76740. -// run-pass -// compile-flags: -Zmir-opt-level=4 - -#[derive(Copy, Clone)] -pub struct V([usize; 4]); - -impl V { - fn new() -> Self { - V([0; 4]) - } - - #[inline(never)] - fn check(mut self) { - assert_eq!(self.0[0], 0); - self.0[0] = 1; - } -} - -fn main() { - let v = V::new(); - let mut i = 0; - while i != 10 { - // Copy propagation incorrectly assumed that Operand::Move does not - // mutate the local, and used the same v for each V::check call, - // rather than a copy. - v.check(); - i += 1; - } -} |