Skip to content

Commit 3cbb6e4

Browse files
committed
Add a test for #107975
1 parent 4bc39f0 commit 3cbb6e4

3 files changed

+59
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
//@ run-pass
2+
//@ known-bug: #107975
3+
4+
#![feature(exposed_provenance)]
5+
6+
use std::ptr::addr_of;
7+
8+
fn main() {
9+
let a: usize = {
10+
let v = 0u8;
11+
addr_of!(v).expose_provenance()
12+
};
13+
let b: usize = {
14+
let v = 0u8;
15+
addr_of!(v).expose_provenance()
16+
};
17+
let i: usize = a - b;
18+
assert_ne!(i, 0);
19+
println!("{}", i);
20+
assert_eq!(i, 0);
21+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
//@ run-pass
2+
//@ known-bug: #107975
3+
4+
fn main() {
5+
let a: usize = {
6+
let v = 0u8;
7+
&v as *const _ as usize
8+
};
9+
let b: usize = {
10+
let v = 0u8;
11+
&v as *const _ as usize
12+
};
13+
let i: usize = a - b;
14+
assert_ne!(i, 0);
15+
println!("{}", i);
16+
assert_eq!(i, 0);
17+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
//@ run-pass
2+
//@ known-bug: #107975
3+
4+
#![feature(strict_provenance)]
5+
6+
use std::ptr::addr_of;
7+
8+
fn main() {
9+
let a: usize = {
10+
let v = 0u8;
11+
addr_of!(v).addr()
12+
};
13+
let b: usize = {
14+
let v = 0u8;
15+
addr_of!(v).addr()
16+
};
17+
let i: usize = a - b;
18+
assert_ne!(i, 0);
19+
println!("{}", i);
20+
assert_eq!(i, 0);
21+
}

0 commit comments

Comments
 (0)