Skip to content

Commit 3706971

Browse files
committed
Add UI test annotations to manual_dangling_ptr
1 parent 29f9068 commit 3706971

File tree

3 files changed

+30
-12
lines changed

3 files changed

+30
-12
lines changed

tests/ui/manual_dangling_ptr.fixed

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,24 @@ use std::mem;
44
pub fn foo(_const: *const f32, _mut: *mut i64) {}
55

66
fn main() {
7-
// should lint
87
let _ = std::ptr::dangling::<u32>();
8+
//~^ manual_dangling_ptr
99
let _ = std::ptr::dangling_mut::<f64>();
10+
//~^ manual_dangling_ptr
1011
let _: *const u8 = std::ptr::dangling();
12+
//~^ manual_dangling_ptr
1113

1214
let _ = std::ptr::dangling::<u32>();
15+
//~^ manual_dangling_ptr
1316
let _ = std::ptr::dangling_mut::<u64>();
17+
//~^ manual_dangling_ptr
1418

1519
foo(std::ptr::dangling(), std::ptr::dangling_mut());
20+
//~^ manual_dangling_ptr
21+
//~| manual_dangling_ptr
22+
}
1623

17-
// should not lint
24+
fn should_not_lint() {
1825
let _ = 0x10 as *mut i64;
1926
let _ = mem::align_of::<u32>() as *const u64;
2027

@@ -30,4 +37,6 @@ fn _msrv_1_83() {
3037
#[clippy::msrv = "1.84"]
3138
fn _msrv_1_84() {
3239
foo(std::ptr::dangling(), std::ptr::dangling_mut());
40+
//~^ manual_dangling_ptr
41+
//~| manual_dangling_ptr
3342
}

tests/ui/manual_dangling_ptr.rs

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,24 @@ use std::mem;
44
pub fn foo(_const: *const f32, _mut: *mut i64) {}
55

66
fn main() {
7-
// should lint
87
let _ = 4 as *const u32;
8+
//~^ manual_dangling_ptr
99
let _ = 8 as *mut f64;
10+
//~^ manual_dangling_ptr
1011
let _: *const u8 = 1 as *const _;
12+
//~^ manual_dangling_ptr
1113

1214
let _ = mem::align_of::<u32>() as *const u32;
15+
//~^ manual_dangling_ptr
1316
let _ = mem::align_of::<u64>() as *mut u64;
17+
//~^ manual_dangling_ptr
1418

1519
foo(4 as *const _, 8 as *mut _);
20+
//~^ manual_dangling_ptr
21+
//~| manual_dangling_ptr
22+
}
1623

17-
// should not lint
24+
fn should_not_lint() {
1825
let _ = 0x10 as *mut i64;
1926
let _ = mem::align_of::<u32>() as *const u64;
2027

@@ -30,4 +37,6 @@ fn _msrv_1_83() {
3037
#[clippy::msrv = "1.84"]
3138
fn _msrv_1_84() {
3239
foo(4 as *const _, 8 as *mut _);
40+
//~^ manual_dangling_ptr
41+
//~| manual_dangling_ptr
3342
}

tests/ui/manual_dangling_ptr.stderr

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
error: manual creation of a dangling pointer
2-
--> tests/ui/manual_dangling_ptr.rs:8:13
2+
--> tests/ui/manual_dangling_ptr.rs:7:13
33
|
44
LL | let _ = 4 as *const u32;
55
| ^^^^^^^^^^^^^^^ help: use: `std::ptr::dangling::<u32>()`
@@ -14,43 +14,43 @@ LL | let _ = 8 as *mut f64;
1414
| ^^^^^^^^^^^^^ help: use: `std::ptr::dangling_mut::<f64>()`
1515

1616
error: manual creation of a dangling pointer
17-
--> tests/ui/manual_dangling_ptr.rs:10:24
17+
--> tests/ui/manual_dangling_ptr.rs:11:24
1818
|
1919
LL | let _: *const u8 = 1 as *const _;
2020
| ^^^^^^^^^^^^^ help: use: `std::ptr::dangling()`
2121

2222
error: manual creation of a dangling pointer
23-
--> tests/ui/manual_dangling_ptr.rs:12:13
23+
--> tests/ui/manual_dangling_ptr.rs:14:13
2424
|
2525
LL | let _ = mem::align_of::<u32>() as *const u32;
2626
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `std::ptr::dangling::<u32>()`
2727

2828
error: manual creation of a dangling pointer
29-
--> tests/ui/manual_dangling_ptr.rs:13:13
29+
--> tests/ui/manual_dangling_ptr.rs:16:13
3030
|
3131
LL | let _ = mem::align_of::<u64>() as *mut u64;
3232
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use: `std::ptr::dangling_mut::<u64>()`
3333

3434
error: manual creation of a dangling pointer
35-
--> tests/ui/manual_dangling_ptr.rs:15:9
35+
--> tests/ui/manual_dangling_ptr.rs:19:9
3636
|
3737
LL | foo(4 as *const _, 8 as *mut _);
3838
| ^^^^^^^^^^^^^ help: use: `std::ptr::dangling()`
3939

4040
error: manual creation of a dangling pointer
41-
--> tests/ui/manual_dangling_ptr.rs:15:24
41+
--> tests/ui/manual_dangling_ptr.rs:19:24
4242
|
4343
LL | foo(4 as *const _, 8 as *mut _);
4444
| ^^^^^^^^^^^ help: use: `std::ptr::dangling_mut()`
4545

4646
error: manual creation of a dangling pointer
47-
--> tests/ui/manual_dangling_ptr.rs:32:9
47+
--> tests/ui/manual_dangling_ptr.rs:39:9
4848
|
4949
LL | foo(4 as *const _, 8 as *mut _);
5050
| ^^^^^^^^^^^^^ help: use: `std::ptr::dangling()`
5151

5252
error: manual creation of a dangling pointer
53-
--> tests/ui/manual_dangling_ptr.rs:32:24
53+
--> tests/ui/manual_dangling_ptr.rs:39:24
5454
|
5555
LL | foo(4 as *const _, 8 as *mut _);
5656
| ^^^^^^^^^^^ help: use: `std::ptr::dangling_mut()`

0 commit comments

Comments
 (0)