Commit 3afb532b authored by Denis Efremov's avatar Denis Efremov Committed by Julia Lawall

coccinelle: misc: restrict patch mode in flexible_array.cocci

Skip patches generation for structs with a single field.
Changing a zero-length array to a flexible array member in a struct
with no named members breaks the compilation. However, reporting
such cases is still valuable, e.g. commit 637464c5
("ACPI: NFIT: Fix flexible_array.cocci warnings").
Signed-off-by: default avatarDenis Efremov <efremov@linux.com>
Signed-off-by: default avatarJulia Lawall <julia.lawall@inria.fr>
parent 5f66f73b
......@@ -51,21 +51,40 @@ position p : script:python() { relevant(p) };
};
)
@only_field depends on patch@
identifier name, array;
type T;
position q;
@@
(
struct name {@q
T array[0];
};
|
struct {@q
T array[0];
};
)
@depends on patch@
identifier name, array;
type T;
position p : script:python() { relevant(p) };
// position @q with rule "only_field" simplifies
// handling of bitfields, arrays, etc.
position q != only_field.q;
@@
(
struct name {
struct name {@q
...
T array@p[
- 0
];
};
|
struct {
struct {@q
...
T array@p[
- 0
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment