File tree Expand file tree Collapse file tree 2 files changed +61
-12
lines changed Expand file tree Collapse file tree 2 files changed +61
-12
lines changed Original file line number Diff line number Diff line change 11fn main ( ) {
22 unsafe {
3- let x = & ( ) as * const ( ) ;
4- x . offset ( 0 ) ;
5- x . wrapping_add ( 0 ) ;
6- x . sub ( 0 ) ;
7- x . wrapping_sub ( 0 ) ;
3+ let m = & mut ( ) as * mut ( ) ;
4+ m . offset ( 0 ) ;
5+ m . wrapping_add ( 0 ) ;
6+ m . sub ( 0 ) ;
7+ m . wrapping_sub ( 0 ) ;
88
9- let y = & 1 as * const u8 ;
9+ let c = & ( ) as * const ( ) ;
10+ c. offset ( 0 ) ;
11+ c. wrapping_add ( 0 ) ;
12+ c. sub ( 0 ) ;
13+ c. wrapping_sub ( 0 ) ;
14+
15+ let y = & 1 as * const i32 ;
1016 y. offset ( 0 ) ;
1117 }
1218}
Original file line number Diff line number Diff line change 1- error[E0606]: casting `&i32` as `*const u8` is invalid
2- --> $DIR/zero_offset.rs:9:17
1+ error: offset calculation on zero-sized value
2+ --> $DIR/zero_offset.rs:4:9
33 |
4- LL | let y = &1 as *const u8;
5- | ^^^^^^^^^^^^^^^
4+ LL | m.offset(0);
5+ | ^^^^^^^^^^^
6+ |
7+ = note: `#[deny(clippy::zst_offset)]` on by default
8+
9+ error: offset calculation on zero-sized value
10+ --> $DIR/zero_offset.rs:5:9
11+ |
12+ LL | m.wrapping_add(0);
13+ | ^^^^^^^^^^^^^^^^^
14+
15+ error: offset calculation on zero-sized value
16+ --> $DIR/zero_offset.rs:6:9
17+ |
18+ LL | m.sub(0);
19+ | ^^^^^^^^
20+
21+ error: offset calculation on zero-sized value
22+ --> $DIR/zero_offset.rs:7:9
23+ |
24+ LL | m.wrapping_sub(0);
25+ | ^^^^^^^^^^^^^^^^^
26+
27+ error: offset calculation on zero-sized value
28+ --> $DIR/zero_offset.rs:10:9
29+ |
30+ LL | c.offset(0);
31+ | ^^^^^^^^^^^
32+
33+ error: offset calculation on zero-sized value
34+ --> $DIR/zero_offset.rs:11:9
35+ |
36+ LL | c.wrapping_add(0);
37+ | ^^^^^^^^^^^^^^^^^
38+
39+ error: offset calculation on zero-sized value
40+ --> $DIR/zero_offset.rs:12:9
41+ |
42+ LL | c.sub(0);
43+ | ^^^^^^^^
44+
45+ error: offset calculation on zero-sized value
46+ --> $DIR/zero_offset.rs:13:9
47+ |
48+ LL | c.wrapping_sub(0);
49+ | ^^^^^^^^^^^^^^^^^
650
7- error: aborting due to previous error
51+ error: aborting due to 8 previous errors
852
9- For more information about this error, try `rustc --explain E0606`.
You can’t perform that action at this time.
0 commit comments