зеркало из https://github.com/microsoft/git.git
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:
Коммит
2fb377e569
|
@ -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;
|
||||
|
|
Загрузка…
Ссылка в новой задаче