Re: [PATCH] coccinelle: misc: Add array_size_dup script to detect missed overflow checks
From: Markus Elfring
Date: Wed Jun 17 2020 - 10:36:29 EST
I propose once more to avoid a typo in the previous patch subject.
â
> (
> - size = E1 * E2;
> + size = array_size(E1, E2);
> |
> - size = E1 * E2 * E3;
> + size = array3_size(E1, E2, E3);
> |
> - size = E1 * E2 + E3;
> + size = struct_size(E1, E2, E3);
> )
How do you think about to use SmPL disjunctions like the following?
size =
(
- (E1) * (E2)
+ array_size(E1, E2)
|
- (E1) * (E2) * (E3)
+ array3_size(E1, E2, E3)
|
- (E1) * (E2) + (E3)
+ struct_size(E1, E2, E3)
);
> ... when != size = E4
> when != size += E4
â
Can it become helpful to express a constraint for a metavariable of
the type âassignment operatorâ?
> (
> * size = E1 * E2;@p
> |
> * size = E1 * E2 * E3;@p
> |
> * size = E1 * E2 + E3;@p
> )
*size =@p \( (E1) * (E2) \| (E1) * (E2) * (E3) \| (E1) * (E2) + (E3) \)
Regards,
Markus