Loading...
1/// Remove unneeded conversion to bool
2///
3//# Relational and logical operators evaluate to bool,
4//# explicit conversion is overly verbose and unneeded.
5//
6// Copyright: (C) 2016 Andrew F. Davis <afd@ti.com> GPLv2.
7
8virtual patch
9virtual context
10virtual org
11virtual report
12
13//----------------------------------------------------------
14// For patch mode
15//----------------------------------------------------------
16
17@depends on patch@
18expression A, B;
19symbol true, false;
20@@
21
22(
23 A == B
24|
25 A != B
26|
27 A > B
28|
29 A < B
30|
31 A >= B
32|
33 A <= B
34|
35 A && B
36|
37 A || B
38)
39- ? true : false
40
41//----------------------------------------------------------
42// For context mode
43//----------------------------------------------------------
44
45@r depends on !patch@
46expression A, B;
47symbol true, false;
48position p;
49@@
50
51(
52 A == B
53|
54 A != B
55|
56 A > B
57|
58 A < B
59|
60 A >= B
61|
62 A <= B
63|
64 A && B
65|
66 A || B
67)
68* ? true : false@p
69
70//----------------------------------------------------------
71// For org mode
72//----------------------------------------------------------
73
74@script:python depends on r&&org@
75p << r.p;
76@@
77
78msg = "WARNING: conversion to bool not needed here"
79coccilib.org.print_todo(p[0], msg)
80
81//----------------------------------------------------------
82// For report mode
83//----------------------------------------------------------
84
85@script:python depends on r&&report@
86p << r.p;
87@@
88
89msg = "WARNING: conversion to bool not needed here"
90coccilib.report.print_report(p[0], msg)
1// SPDX-License-Identifier: GPL-2.0-only
2/// Remove unneeded conversion to bool
3///
4//# Relational and logical operators evaluate to bool,
5//# explicit conversion is overly verbose and unneeded.
6//
7// Copyright: (C) 2016 Andrew F. Davis <afd@ti.com>
8
9virtual patch
10virtual context
11virtual org
12virtual report
13
14//----------------------------------------------------------
15// For patch mode
16//----------------------------------------------------------
17
18@depends on patch@
19expression A, B;
20symbol true, false;
21@@
22
23(
24 A == B
25|
26 A != B
27|
28 A > B
29|
30 A < B
31|
32 A >= B
33|
34 A <= B
35|
36 A && B
37|
38 A || B
39)
40- ? true : false
41
42//----------------------------------------------------------
43// For context mode
44//----------------------------------------------------------
45
46@r depends on !patch@
47expression A, B;
48symbol true, false;
49position p;
50@@
51
52(
53 A == B
54|
55 A != B
56|
57 A > B
58|
59 A < B
60|
61 A >= B
62|
63 A <= B
64|
65 A && B
66|
67 A || B
68)
69* ? true : false@p
70
71//----------------------------------------------------------
72// For org mode
73//----------------------------------------------------------
74
75@script:python depends on r&&org@
76p << r.p;
77@@
78
79msg = "WARNING: conversion to bool not needed here"
80coccilib.org.print_todo(p[0], msg)
81
82//----------------------------------------------------------
83// For report mode
84//----------------------------------------------------------
85
86@script:python depends on r&&report@
87p << r.p;
88@@
89
90msg = "WARNING: conversion to bool not needed here"
91coccilib.report.print_report(p[0], msg)