Merge branch 'rs/cocci-array-copy'

A coccinelle rule (in contrib/) to encourage use of COPY_ARRAY
macro has been improved.

* rs/cocci-array-copy:
  cocci: avoid normalization rules for memcpy
This commit is contained in:
Junio C Hamano 2022-07-19 16:40:18 -07:00
commit 2fb377e569

View File

@ -1,60 +1,58 @@
@@
expression dst, src, n, E;
@@
memcpy(dst, src, n * sizeof(
- E[...]
+ *(E)
))
@@
type T;
T *ptr;
T[] arr;
expression E, n;
@@
(
memcpy(ptr, E,
- n * sizeof(*(ptr))
+ n * sizeof(T)
)
|
memcpy(arr, E,
- n * sizeof(*(arr))
+ n * sizeof(T)
)
|
memcpy(E, ptr,
- n * sizeof(*(ptr))
+ n * sizeof(T)
)
|
memcpy(E, arr,
- n * sizeof(*(arr))
+ n * sizeof(T)
)
)
@@
type T;
T *dst_ptr;
T *src_ptr;
expression n;
@@
- memcpy(dst_ptr, src_ptr, (n) * \( sizeof(T)
- \| sizeof(*(dst_ptr))
- \| sizeof(*(src_ptr))
- \| sizeof(dst_ptr[...])
- \| sizeof(src_ptr[...])
- \) )
+ COPY_ARRAY(dst_ptr, src_ptr, n)
@@
type T;
T *dst_ptr;
T[] src_arr;
expression n;
@@
- memcpy(dst_ptr, src_arr, (n) * \( sizeof(T)
- \| sizeof(*(dst_ptr))
- \| sizeof(*(src_arr))
- \| sizeof(dst_ptr[...])
- \| sizeof(src_arr[...])
- \) )
+ COPY_ARRAY(dst_ptr, src_arr, n)
@@
type T;
T[] dst_arr;
T *src_ptr;
expression n;
@@
- memcpy(dst_arr, src_ptr, (n) * \( sizeof(T)
- \| sizeof(*(dst_arr))
- \| sizeof(*(src_ptr))
- \| sizeof(dst_arr[...])
- \| sizeof(src_ptr[...])
- \) )
+ COPY_ARRAY(dst_arr, src_ptr, n)
@@
type T;
T[] dst_arr;
T[] src_arr;
expression n;
@@
(
- memcpy(dst_ptr, src_ptr, (n) * sizeof(T))
+ COPY_ARRAY(dst_ptr, src_ptr, n)
|
- memcpy(dst_ptr, src_arr, (n) * sizeof(T))
+ COPY_ARRAY(dst_ptr, src_arr, n)
|
- memcpy(dst_arr, src_ptr, (n) * sizeof(T))
+ COPY_ARRAY(dst_arr, src_ptr, n)
|
- memcpy(dst_arr, src_arr, (n) * sizeof(T))
- memcpy(dst_arr, src_arr, (n) * \( sizeof(T)
- \| sizeof(*(dst_arr))
- \| sizeof(*(src_arr))
- \| sizeof(dst_arr[...])
- \| sizeof(src_arr[...])
- \) )
+ COPY_ARRAY(dst_arr, src_arr, n)
)
@@
type T;