coccinelle: deref_null: avoid useless computation
authorJulia Lawall <Julia.Lawall@lip6.fr>
Sat, 3 Feb 2018 07:44:58 +0000 (08:44 +0100)
committerMasahiro Yamada <yamada.masahiro@socionext.com>
Wed, 7 Feb 2018 15:16:12 +0000 (00:16 +0900)
The effect of the rules ifm1, pr11, and pr12 is only used in the final rule,
which depends on context && !org && !report.  Thus these rules should only
be performed in those circumstances.

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
scripts/coccinelle/null/deref_null.cocci

index f192d6035d023b0be83e88c4acb691546722a015..b16ccb7663a7d1aecb8a96298408a7c32f7d7194 100644 (file)
@@ -212,7 +212,7 @@ else S3
 // The following three rules are duplicates of ifm, pr1 and pr2 respectively.
 // It is need because the previous rule as already made a "change".
 
-@ifm1@
+@ifm1 depends on context && !org && !report@
 expression *E;
 statement S1,S2;
 position p1;
@@ -220,7 +220,7 @@ position p1;
 
 if@p1 ((E == NULL && ...) || ...) S1 else S2
 
-@pr11 expression@
+@pr11 depends on context && !org && !report expression@
 expression *ifm1.E;
 identifier f;
 position p1;
@@ -228,7 +228,7 @@ position p1;
 
  (E != NULL && ...) ? <+...E->f@p1...+> : ...
 
-@pr12 expression@
+@pr12 depends on context && !org && !report expression@
 expression *ifm1.E;
 identifier f;
 position p2;