|
1 |
| -error: any use of this value will cause an error |
| 1 | +error[E0080]: evaluation of constant value failed |
2 | 2 | --> $DIR/copy-intrinsic.rs:27:5
|
3 | 3 | |
|
4 |
| -LL | / const COPY_OOB_1: () = unsafe { |
5 |
| -LL | | let mut x = 0i32; |
6 |
| -LL | | let dangle = (&mut x as *mut i32).wrapping_add(10); |
7 |
| -LL | | // Even if the first ptr is an int ptr and this is a ZST copy, we should detect dangling 2nd ptrs. |
8 |
| -LL | | copy_nonoverlapping(0x100 as *const i32, dangle, 0); |
9 |
| - | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ memory access failed: pointer must be in-bounds at offset 40, but is outside bounds of alloc4 which has size 4 |
10 |
| -LL | | |
11 |
| -LL | | |
12 |
| -LL | | }; |
13 |
| - | |__- |
14 |
| - | |
15 |
| - = note: `#[deny(const_err)]` on by default |
16 |
| - = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! |
17 |
| - = note: for more information, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> |
| 4 | +LL | copy_nonoverlapping(0x100 as *const i32, dangle, 0); |
| 5 | + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ memory access failed: pointer must be in-bounds at offset 40, but is outside bounds of alloc4 which has size 4 |
18 | 6 |
|
19 |
| -error: any use of this value will cause an error |
20 |
| - --> $DIR/copy-intrinsic.rs:35:5 |
21 |
| - | |
22 |
| -LL | / const COPY_OOB_2: () = unsafe { |
23 |
| -LL | | let x = 0i32; |
24 |
| -LL | | let dangle = (&x as *const i32).wrapping_add(10); |
25 |
| -LL | | // Even if the second ptr is an int ptr and this is a ZST copy, we should detect dangling 1st ptrs. |
26 |
| -LL | | copy_nonoverlapping(dangle, 0x100 as *mut i32, 0); |
27 |
| - | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ memory access failed: pointer must be in-bounds at offset 40, but is outside bounds of alloc6 which has size 4 |
28 |
| -LL | | |
29 |
| -LL | | |
30 |
| -LL | | }; |
31 |
| - | |__- |
| 7 | +error[E0080]: evaluation of constant value failed |
| 8 | + --> $DIR/copy-intrinsic.rs:33:5 |
32 | 9 | |
|
33 |
| - = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! |
34 |
| - = note: for more information, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> |
| 10 | +LL | copy_nonoverlapping(dangle, 0x100 as *mut i32, 0); |
| 11 | + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ memory access failed: pointer must be in-bounds at offset 40, but is outside bounds of alloc6 which has size 4 |
35 | 12 |
|
36 |
| -error: any use of this value will cause an error |
37 |
| - --> $DIR/copy-intrinsic.rs:43:5 |
| 13 | +error[E0080]: evaluation of constant value failed |
| 14 | + --> $DIR/copy-intrinsic.rs:40:5 |
38 | 15 | |
|
39 |
| -LL | / const COPY_SIZE_OVERFLOW: () = unsafe { |
40 |
| -LL | | let x = 0; |
41 |
| -LL | | let mut y = 0; |
42 |
| -LL | | copy(&x, &mut y, 1usize << (mem::size_of::<usize>() * 8 - 1)); |
43 |
| - | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ overflow computing total size of `copy` |
44 |
| -LL | | |
45 |
| -LL | | |
46 |
| -LL | | }; |
47 |
| - | |__- |
48 |
| - | |
49 |
| - = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! |
50 |
| - = note: for more information, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> |
| 16 | +LL | copy(&x, &mut y, 1usize << (mem::size_of::<usize>() * 8 - 1)); |
| 17 | + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ overflow computing total size of `copy` |
51 | 18 |
|
52 |
| -error: any use of this value will cause an error |
53 |
| - --> $DIR/copy-intrinsic.rs:50:5 |
54 |
| - | |
55 |
| -LL | / const COPY_NONOVERLAPPING_SIZE_OVERFLOW: () = unsafe { |
56 |
| -LL | | let x = 0; |
57 |
| -LL | | let mut y = 0; |
58 |
| -LL | | copy_nonoverlapping(&x, &mut y, 1usize << (mem::size_of::<usize>() * 8 - 1)); |
59 |
| - | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ overflow computing total size of `copy_nonoverlapping` |
60 |
| -LL | | |
61 |
| -LL | | |
62 |
| -LL | | }; |
63 |
| - | |__- |
| 19 | +error[E0080]: evaluation of constant value failed |
| 20 | + --> $DIR/copy-intrinsic.rs:46:5 |
64 | 21 | |
|
65 |
| - = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! |
66 |
| - = note: for more information, see issue #71800 <https://github.com/rust-lang/rust/issues/71800> |
| 22 | +LL | copy_nonoverlapping(&x, &mut y, 1usize << (mem::size_of::<usize>() * 8 - 1)); |
| 23 | + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ overflow computing total size of `copy_nonoverlapping` |
67 | 24 |
|
68 | 25 | error: aborting due to 4 previous errors
|
69 | 26 |
|
| 27 | +For more information about this error, try `rustc --explain E0080`. |
0 commit comments