1/// Find &&/|| operations that include the same argument more than once 2//# A common source of false positives is when the argument performs a side 3//# effect. 4/// 5// Confidence: Moderate 6// Copyright: (C) 2010 Nicolas Palix, DIKU. GPLv2. 7// Copyright: (C) 2010 Julia Lawall, DIKU. GPLv2. 8// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. GPLv2. 9// URL: http://coccinelle.lip6.fr/ 10// Comments: 11// Options: -no_includes -include_headers 12 13virtual context 14virtual org 15virtual report 16 17@r expression@ 18expression E; 19position p; 20@@ 21 22( 23* E@p 24 || ... || E 25| 26* E@p 27 && ... && E 28) 29 30@script:python depends on org@ 31p << r.p; 32@@ 33 34cocci.print_main("duplicated argument to && or ||",p) 35 36@script:python depends on report@ 37p << r.p; 38@@ 39 40coccilib.report.print_report(p[0],"duplicated argument to && or ||") 41