@@ -17,7 +17,7 @@ pub fn test_alloc(mode: i32) {
17
17
println ! ( " v3 = {v3}" ) ;
18
18
println ! ( " v4 = {v4}" ) ;
19
19
20
- std:: alloc:: dealloc ( m1, layout) ; // $ Source=dealloc
20
+ std:: alloc:: dealloc ( m1, layout) ; // $ Source[rust/access-invalid-pointer] =dealloc
21
21
// (m1, m2 are now dangling)
22
22
23
23
match mode {
@@ -67,7 +67,7 @@ pub fn test_alloc_array(mode: i32) {
67
67
println ! ( " v1 = {v1}" ) ;
68
68
println ! ( " v2 = {v2}" ) ;
69
69
70
- std:: alloc:: dealloc ( m2 as * mut u8 , layout) ; // $ Source=dealloc_array
70
+ std:: alloc:: dealloc ( m2 as * mut u8 , layout) ; // $ Source[rust/access-invalid-pointer] =dealloc_array
71
71
// m1, m2 are now dangling
72
72
73
73
match mode {
@@ -109,7 +109,7 @@ pub fn test_libc() {
109
109
let v1 = * my_ptr; // GOOD
110
110
println ! ( " v1 = {v1}" ) ;
111
111
112
- libc:: free ( my_ptr as * mut libc:: c_void ) ; // $ Source=free
112
+ libc:: free ( my_ptr as * mut libc:: c_void ) ; // $ Source[rust/access-invalid-pointer] =free
113
113
// (my_ptr is now dangling)
114
114
115
115
let v2 = * my_ptr; // $ Alert[rust/access-invalid-pointer]=free
@@ -120,9 +120,9 @@ pub fn test_libc() {
120
120
// --- std::ptr ---
121
121
122
122
pub fn test_ptr_invalid ( mode : i32 ) {
123
- let p1: * const i64 = std:: ptr:: dangling ( ) ; // $ Source=dangling
124
- let p2: * mut i64 = std:: ptr:: dangling_mut ( ) ; // $ Source=dangling_mut
125
- let p3: * const i64 = std:: ptr:: null ( ) ; // $ Source=null
123
+ let p1: * const i64 = std:: ptr:: dangling ( ) ; // $ Source[rust/access-invalid-pointer] =dangling
124
+ let p2: * mut i64 = std:: ptr:: dangling_mut ( ) ; // $ Source[rust/access-invalid-pointer] =dangling_mut
125
+ let p3: * const i64 = std:: ptr:: null ( ) ; // $ Source[rust/access-invalid-pointer] =null
126
126
127
127
if mode == 120 {
128
128
unsafe {
@@ -173,7 +173,7 @@ pub fn test_ptr_drop(mode: i32) {
173
173
println ! ( " v1 = {v1}" ) ;
174
174
println ! ( " v2 = {v2}" ) ;
175
175
176
- std:: ptr:: drop_in_place ( p1) ; // $ Source=drop_in_place
176
+ std:: ptr:: drop_in_place ( p1) ; // $ Source[rust/access-invalid-pointer] =drop_in_place
177
177
// explicitly destructs the pointed-to `m2`
178
178
179
179
if mode == 1 {
@@ -212,7 +212,7 @@ impl Drop for MyDropBuffer {
212
212
213
213
unsafe {
214
214
_ = * self . ptr ;
215
- drop ( * self . ptr ) ; // $ MISSING: Source=drop
215
+ drop ( * self . ptr ) ; // $ MISSING: Source[rust/access-invalid-pointer] =drop
216
216
_ = * self . ptr ; // $ MISSING: Alert[rust/access-invalid-pointer]=drop
217
217
std:: alloc:: dealloc ( self . ptr , layout) ;
218
218
}
@@ -239,7 +239,7 @@ fn test_qhelp_example_good(ptr: *mut String) {
239
239
240
240
fn test_qhelp_example_bad ( ptr : * mut String ) {
241
241
unsafe {
242
- std:: ptr:: drop_in_place ( ptr) ; // $ Source=drop_in_place
242
+ std:: ptr:: drop_in_place ( ptr) ; // $ Source[rust/access-invalid-pointer] =drop_in_place
243
243
}
244
244
245
245
// ...
@@ -280,7 +280,7 @@ pub fn test_vec_reserve() {
280
280
println ! ( " v1 = {}" , v1) ;
281
281
}
282
282
283
- vec1. reserve ( 1000 ) ; // $ MISSING: Source=reserve
283
+ vec1. reserve ( 1000 ) ; // $ MISSING: Source[rust/access-invalid-pointer] =reserve
284
284
// (may invalidate the pointer)
285
285
286
286
unsafe {
@@ -300,7 +300,7 @@ pub fn test_vec_reserve() {
300
300
}
301
301
302
302
for _i in 0 ..1000 {
303
- vec2. push ( 0 ) ; // $ MISSING: Source=push
303
+ vec2. push ( 0 ) ; // $ MISSING: Source[rust/access-invalid-pointer] =push
304
304
// (may invalidate the pointer)
305
305
}
306
306
0 commit comments