Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1502227 > unrolled thread
| Started by | "Andrew F. Davis" <afd@ti.com> |
|---|---|
| First post | 2016-10-17 19:00 +0200 |
| Last post | 2016-10-17 23:10 +0200 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
[PATCH v2] Coccinelle: Add misc/boolconv.cocci "Andrew F. Davis" <afd@ti.com> - 2016-10-17 19:00 +0200
Re: [PATCH v2] Coccinelle: Add misc/boolconv.cocci Julia Lawall <julia.lawall@lip6.fr> - 2016-10-17 23:00 +0200
Re: [PATCH v2] Coccinelle: Add misc/boolconv.cocci "Andrew F. Davis" <afd@ti.com> - 2016-10-17 23:10 +0200
| From | "Andrew F. Davis" <afd@ti.com> |
|---|---|
| Date | 2016-10-17 19:00 +0200 |
| Subject | [PATCH v2] Coccinelle: Add misc/boolconv.cocci |
| Message-ID | <stjqy-61C-67@gated-at.bofh.it> |
Add a script to check for unneeded conversions to bool. Signed-off-by: Andrew F. Davis <afd@ti.com> Acked-by: Julia Lawall <julia.lawall@lip6.fr> --- scripts/coccinelle/misc/boolconv.cocci | 90 ++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 scripts/coccinelle/misc/boolconv.cocci diff --git a/scripts/coccinelle/misc/boolconv.cocci b/scripts/coccinelle/misc/boolconv.cocci new file mode 100644 index 0000000..33c464d --- /dev/null +++ b/scripts/coccinelle/misc/boolconv.cocci @@ -0,0 +1,90 @@ +/// Remove unneeded conversion to bool +/// +//# Relational and logical operators evaluate to bool, +//# explicit conversion is overly verbose and unneeded. +// +// Copyright: (C) 2016 Andrew F. Davis <afd@ti.com> GPLv2. + +virtual patch +virtual context +virtual org +virtual report + +//---------------------------------------------------------- +// For patch mode +//---------------------------------------------------------- + +@depends on patch@ +expression A, B; +symbol true, false; +@@ + +( + A == B +| + A != B +| + A > B +| + A < B +| + A >= B +| + A <= B +| + A && B +| + A || B +) +- ? true : false + +//---------------------------------------------------------- +// For context mode +//---------------------------------------------------------- + +@r depends on !patch@ +expression A, B; +symbol true, false; +position p; +@@ + +( + A == B +| + A != B +| + A > B +| + A < B +| + A >= B +| + A <= B +| + A && B +| + A || B +) +* ? true : false@p + +//---------------------------------------------------------- +// For org mode +//---------------------------------------------------------- + +@script:python depends on r&&org@ +p << r.p; +@@ + +msg = "WARNING: conversion to bool not needed here" +coccilib.org.print_todo(p[0], msg) + +//---------------------------------------------------------- +// For report mode +//---------------------------------------------------------- + +@script:python depends on r&&report@ +p << r.p; +@@ + +msg = "WARNING: conversion to bool not needed here" +coccilib.report.print_report(p[0], msg) -- 2.10.1
[toc] | [next] | [standalone]
| From | Julia Lawall <julia.lawall@lip6.fr> |
|---|---|
| Date | 2016-10-17 23:00 +0200 |
| Message-ID | <stnaO-c4-19@gated-at.bofh.it> |
| In reply to | #1502227 |
On Mon, 17 Oct 2016, Andrew F. Davis wrote: > Add a script to check for unneeded conversions to bool. What changed since the previous version? julia > > Signed-off-by: Andrew F. Davis <afd@ti.com> > Acked-by: Julia Lawall <julia.lawall@lip6.fr> > --- > scripts/coccinelle/misc/boolconv.cocci | 90 ++++++++++++++++++++++++++++++++++ > 1 file changed, 90 insertions(+) > create mode 100644 scripts/coccinelle/misc/boolconv.cocci > > diff --git a/scripts/coccinelle/misc/boolconv.cocci b/scripts/coccinelle/misc/boolconv.cocci > new file mode 100644 > index 0000000..33c464d > --- /dev/null > +++ b/scripts/coccinelle/misc/boolconv.cocci > @@ -0,0 +1,90 @@ > +/// Remove unneeded conversion to bool > +/// > +//# Relational and logical operators evaluate to bool, > +//# explicit conversion is overly verbose and unneeded. > +// > +// Copyright: (C) 2016 Andrew F. Davis <afd@ti.com> GPLv2. > + > +virtual patch > +virtual context > +virtual org > +virtual report > + > +//---------------------------------------------------------- > +// For patch mode > +//---------------------------------------------------------- > + > +@depends on patch@ > +expression A, B; > +symbol true, false; > +@@ > + > +( > + A == B > +| > + A != B > +| > + A > B > +| > + A < B > +| > + A >= B > +| > + A <= B > +| > + A && B > +| > + A || B > +) > +- ? true : false > + > +//---------------------------------------------------------- > +// For context mode > +//---------------------------------------------------------- > + > +@r depends on !patch@ > +expression A, B; > +symbol true, false; > +position p; > +@@ > + > +( > + A == B > +| > + A != B > +| > + A > B > +| > + A < B > +| > + A >= B > +| > + A <= B > +| > + A && B > +| > + A || B > +) > +* ? true : false@p > + > +//---------------------------------------------------------- > +// For org mode > +//---------------------------------------------------------- > + > +@script:python depends on r&&org@ > +p << r.p; > +@@ > + > +msg = "WARNING: conversion to bool not needed here" > +coccilib.org.print_todo(p[0], msg) > + > +//---------------------------------------------------------- > +// For report mode > +//---------------------------------------------------------- > + > +@script:python depends on r&&report@ > +p << r.p; > +@@ > + > +msg = "WARNING: conversion to bool not needed here" > +coccilib.report.print_report(p[0], msg) > -- > 2.10.1 > >
[toc] | [prev] | [next] | [standalone]
| From | "Andrew F. Davis" <afd@ti.com> |
|---|---|
| Date | 2016-10-17 23:10 +0200 |
| Message-ID | <stnku-wX-15@gated-at.bofh.it> |
| In reply to | #1502448 |
On 10/17/2016 03:54 PM, Julia Lawall wrote: > On Mon, 17 Oct 2016, Andrew F. Davis wrote: > >> Add a script to check for unneeded conversions to bool. > > What changed since the previous version? > Nothing, just a resend, forgot to label it as such. Andrew > julia > > >> >> Signed-off-by: Andrew F. Davis <afd@ti.com> >> Acked-by: Julia Lawall <julia.lawall@lip6.fr> >> --- >> scripts/coccinelle/misc/boolconv.cocci | 90 ++++++++++++++++++++++++++++++++++ >> 1 file changed, 90 insertions(+) >> create mode 100644 scripts/coccinelle/misc/boolconv.cocci >> >> diff --git a/scripts/coccinelle/misc/boolconv.cocci b/scripts/coccinelle/misc/boolconv.cocci >> new file mode 100644 >> index 0000000..33c464d >> --- /dev/null >> +++ b/scripts/coccinelle/misc/boolconv.cocci >> @@ -0,0 +1,90 @@ >> +/// Remove unneeded conversion to bool >> +/// >> +//# Relational and logical operators evaluate to bool, >> +//# explicit conversion is overly verbose and unneeded. >> +// >> +// Copyright: (C) 2016 Andrew F. Davis <afd@ti.com> GPLv2. >> + >> +virtual patch >> +virtual context >> +virtual org >> +virtual report >> + >> +//---------------------------------------------------------- >> +// For patch mode >> +//---------------------------------------------------------- >> + >> +@depends on patch@ >> +expression A, B; >> +symbol true, false; >> +@@ >> + >> +( >> + A == B >> +| >> + A != B >> +| >> + A > B >> +| >> + A < B >> +| >> + A >= B >> +| >> + A <= B >> +| >> + A && B >> +| >> + A || B >> +) >> +- ? true : false >> + >> +//---------------------------------------------------------- >> +// For context mode >> +//---------------------------------------------------------- >> + >> +@r depends on !patch@ >> +expression A, B; >> +symbol true, false; >> +position p; >> +@@ >> + >> +( >> + A == B >> +| >> + A != B >> +| >> + A > B >> +| >> + A < B >> +| >> + A >= B >> +| >> + A <= B >> +| >> + A && B >> +| >> + A || B >> +) >> +* ? true : false@p >> + >> +//---------------------------------------------------------- >> +// For org mode >> +//---------------------------------------------------------- >> + >> +@script:python depends on r&&org@ >> +p << r.p; >> +@@ >> + >> +msg = "WARNING: conversion to bool not needed here" >> +coccilib.org.print_todo(p[0], msg) >> + >> +//---------------------------------------------------------- >> +// For report mode >> +//---------------------------------------------------------- >> + >> +@script:python depends on r&&report@ >> +p << r.p; >> +@@ >> + >> +msg = "WARNING: conversion to bool not needed here" >> +coccilib.report.print_report(p[0], msg) >> -- >> 2.10.1 >> >>
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web