diff options
Diffstat (limited to 'tests/ui/codegen/equal-pointers-unequal/strict-provenance/print.rs')
| -rw-r--r-- | tests/ui/codegen/equal-pointers-unequal/strict-provenance/print.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/ui/codegen/equal-pointers-unequal/strict-provenance/print.rs b/tests/ui/codegen/equal-pointers-unequal/strict-provenance/print.rs new file mode 100644 index 00000000000..075e3475a32 --- /dev/null +++ b/tests/ui/codegen/equal-pointers-unequal/strict-provenance/print.rs @@ -0,0 +1,24 @@ +//@ known-bug: #107975 +//@ compile-flags: -Copt-level=2 +//@ run-pass + +// https://github.com/rust-lang/rust/issues/107975#issuecomment-1430704499 + +#![feature(strict_provenance)] + +use std::ptr; + +fn main() { + let a: usize = { + let v = 0; + ptr::from_ref(&v).addr() + }; + let b: usize = { + let v = 0; + ptr::from_ref(&v).addr() + }; + + assert_ne!(a, b); + println!("{a}"); // or b + assert_eq!(a, b); +} |
