forked from varnishcache/varnish-cache
-
Notifications
You must be signed in to change notification settings - Fork 0
/
flint.lnt
112 lines (82 loc) · 3.06 KB
/
flint.lnt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
/*
* Toplevel control file for FlexeLint
*/
///////////////////////////////////////////////////////////////////////
// build/config related
-efile(451, "tbl/*.h") // No include guard
-efile(451, ../../config.h) // No include guard
-header(../../config.h)
+libh(../../config.h)
///////////////////////////////////////////////////////////////////////
// General stylistic issues
-e726 // Extraneous comma ignored
-e641 // Converting enum '...' to int
-e763 // Redundant declaration for symbol '...' previously declared
// +e958 // padding
///////////////////////////////////////////////////////////////////////
// System/Posix/Iso-C library related
-emacro(747, isnan) // significant coercion
// ignore retval
-esym(534, printf)
-esym(534, fprintf)
-esym(534, sprintf)
-esym(534, memset)
-esym(534, memcpy)
-esym(534, memmove)
-esym(534, strcat)
-esym(534, strcpy)
-esym(534, strlcpy)
-esym(534, strncpy)
-esym(534, sleep)
-esym(534, usleep)
///////////////////////////////////////////////////////////////////////
// <vas.h>
-sem(VAS_Fail, r_no) // does not return
-emacro(506, assert) // constant value boolean
-emacro(827, assert) // loop not reachable
-emacro(774, assert) // boolean always true
-emacro(731, assert) // boolean arg to eq/non-eq
-emacro(731, xxxassert) // arg to eq/non-eq
-emacro(527, WRONG) // unreachable code
-emacro(774, VALID_OBJ) // boolean always true
///////////////////////////////////////////////////////////////////////
// <vsb.h>
-esym(759, VSB_*) // header decl could be moved
-esym(765, VSB_*) // extern could be made static
-esym(714, VSB_*) // symb not ref
-sem(VSB_new, @p == (1p ? 1p : malloc(1)))
-sem(VSB_delete, custodial(1))
// ignore retval
-esym(534, VSB_cat)
-esym(534, VSB_bcat)
-esym(534, VSB_putc)
-esym(534, VSB_printf)
-esym(534, VSB_vprintf)
-esym(534, VSB_putc)
///////////////////////////////////////////////////////////////////////
// <vqueue.h>
-esym(755, VLIST_*) // Global macro not ref.
-esym(755, VSLIST_*)
-esym(755, VSTAILQ_*)
-esym(755, VTAILQ_*)
// 506 = constant value boolean
-emacro(506, VTAILQ_FOREACH_REVERSE_SAFE)
-emacro(506, VTAILQ_FOREACH_SAFE)
-emacro(506, VSTAILQ_FOREACH_SAFE) // constant value boolean
// 826 = Suspicious pointer-to-pointer conversion (area to o small)
-emacro((826), VTAILQ_LAST)
-emacro((826), VTAILQ_PREV)
-emacro(740, VTAILQ_LAST) // Unusual pointer cast (incompatible indirect types)
-emacro(740, VTAILQ_PREV) // Unusual pointer cast (incompatible indirect types)
///////////////////////////////////////////////////////////////////////
// <vdef.h>
-emacro(527, NEEDLESS_RETURN) // unreachable code
///////////////////////////////////////////////////////////////////////
-esym(785,VSL_tags) // Sparse array
///////////////////////////////////////////////////////////////////////
// Noise reduction, review periodically
-e459 // unlocked access from func-ptr
-e679 // Suspicious Truncation in arithmetic expression combining with pointer
-e712 // Loss of precision (___) (___ to ___)
-e732 // Loss of sign (___) (___ to ___)
-e747 // Significant prototype coercion (___) ___ to ___