adlint 1.6.0 → 1.8.0
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog +389 -37
- data/INSTALL +3 -0
- data/MANIFEST +7 -0
- data/NEWS +50 -10
- data/etc/conf.d/i686-mingw/cinit-gcc_4.6.1.erb +1 -1
- data/etc/mesg.d/en_US/messages.yml +7 -7
- data/etc/mesg.d/ja_JP/messages.yml +4 -4
- data/lib/adlint/c/branch.rb +4 -4
- data/lib/adlint/c/code.rb +11 -13
- data/lib/adlint/c/enum.rb +0 -2
- data/lib/adlint/c/environ.rb +13 -7
- data/lib/adlint/c/expr.rb +5 -1
- data/lib/adlint/c/interp.rb +10 -6
- data/lib/adlint/c/mediator.rb +1 -0
- data/lib/adlint/c/message.rb +294 -111
- data/lib/adlint/c/message_shima.rb +63 -0
- data/lib/adlint/c/metric.rb +25 -13
- data/lib/adlint/c/object.rb +168 -31
- data/lib/adlint/c/parser.rb +3 -3
- data/lib/adlint/c/phase.rb +20 -3
- data/lib/adlint/c/syntax.rb +175 -17
- data/lib/adlint/c/value.rb +199 -126
- data/lib/adlint/cpp/asm.rb +4 -4
- data/lib/adlint/cpp/constexpr.rb +1 -1
- data/lib/adlint/cpp/eval.rb +6 -4
- data/lib/adlint/cpp/message.rb +100 -7
- data/lib/adlint/cpp/phase.rb +12 -1
- data/lib/adlint/cpp/source.rb +2 -2
- data/lib/adlint/cpp/subst.rb +2 -4
- data/lib/adlint/lang.rb +5 -3
- data/lib/adlint/ld/metric.rb +1 -1
- data/lib/adlint/version.rb +2 -2
- data/share/demo/Makefile +5 -0
- data/share/demo/bad_include/bad_include.c +13 -0
- data/share/demo/bad_include/test'1'.h +0 -0
- data/share/demo/bad_include/test'2'.h +0 -0
- data/share/demo/incomplete_ifelse/incomplete_ifelse.c +29 -0
- data/share/demo/inline_asm/inline_asm.c +25 -0
- data/share/demo/invalid_call/invalid_call.c +12 -4
- data/share/demo/logical_expr/logical_expr.c +73 -0
- data/share/demo/register_vars/register_vars.c +12 -0
- data/share/demo/typedef_each_src/typedef_each_src.c +9 -0
- data/share/demo/wrap_around/wrap_around.c +17 -0
- data/share/doc/developers_guide_ja.html +3 -3
- data/share/doc/developers_guide_ja.texi +1 -1
- data/share/doc/users_guide_en.html +137 -102
- data/share/doc/users_guide_en.texi +121 -86
- data/share/doc/users_guide_ja.html +118 -91
- data/share/doc/users_guide_ja.texi +103 -76
- metadata +10 -3
data/ChangeLog
CHANGED
@@ -1,3 +1,350 @@
|
|
1
|
+
Fri Apr 27 17:29:22 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
2
|
+
|
3
|
+
* release.ga : 1.8.0
|
4
|
+
- Add W0607 detection.
|
5
|
+
- Add W0608 detection.
|
6
|
+
- Add W0625 detection.
|
7
|
+
- Add W0632 detection.
|
8
|
+
- Add W0633 detection.
|
9
|
+
- Add W0634 detection.
|
10
|
+
- Add W0642 detection.
|
11
|
+
- Add W0711 detection.
|
12
|
+
- Add W0712 detection.
|
13
|
+
- Add W0713 detection.
|
14
|
+
- Add W0714 detection.
|
15
|
+
- Add W0715 detection.
|
16
|
+
- Add W0832 detection.
|
17
|
+
- Fix W0629 detection not to warn when the translation-unit local
|
18
|
+
function is referred to derive a pointer to the function.
|
19
|
+
- Fix W0459 and W0460 detections not to warn about inner variables
|
20
|
+
owned by a temporary variable.
|
21
|
+
- Fix W0461 and W0462 detections not to warn when the length omitted
|
22
|
+
array parameter is specified as an argument.
|
23
|
+
- Fix W1031 detection not to warn when the storage-class-specifier of
|
24
|
+
the object declaration is explicitly specified and the
|
25
|
+
storage-class-specifier of following object definition is omitted.
|
26
|
+
- Fix W0581, W0582, W0583 and W0584 detections not to warn when the
|
27
|
+
corresponding types of argument and parameter are array-array or
|
28
|
+
array-pointer pair.
|
29
|
+
- Fix W0581 detection to warn when the number of arguments in current
|
30
|
+
function call is greater than the number of arguments in previous
|
31
|
+
function calls.
|
32
|
+
- Fix W0582, W0583 and W0584 detections to warn when the number of
|
33
|
+
parameters is greater than the number of arguments.
|
34
|
+
- Fix abend problem when the pathname of #include_next directive is
|
35
|
+
not in the executing environment.
|
36
|
+
- Support mswin path separator in #include or #include_next
|
37
|
+
directives.
|
38
|
+
- Fix bad FN_UELS (number of incomplete if-else-if statement chains)
|
39
|
+
metric measurement.
|
40
|
+
- Improve value version management of the abstract interpreter.
|
41
|
+
|
42
|
+
Fri Apr 27 16:58:38 2012 Rie Shima <rkakuuchi@users.sourceforge.net>
|
43
|
+
|
44
|
+
* share/doc/users_guide_ja.texi : Update descriptions about added
|
45
|
+
warning messages.
|
46
|
+
* share/doc/users_guide_en.texi : Ditto.
|
47
|
+
|
48
|
+
Fri Apr 27 15:42:29 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
49
|
+
|
50
|
+
* etc/mesg.d/ja_JP/messages.yml : Revise W0541 message text.
|
51
|
+
* etc/mesg.d/en_US/messages.yml : Ditto.
|
52
|
+
|
53
|
+
Fri Apr 27 15:36:36 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
54
|
+
|
55
|
+
* lib/adlint/c/message.rb : Fix W0629 detection not to warn when the
|
56
|
+
translation-unit local function is referred to derive a pointer to
|
57
|
+
the function.
|
58
|
+
|
59
|
+
Fri Apr 27 14:24:03 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
60
|
+
|
61
|
+
* release.rc : 1.7.6
|
62
|
+
- Fix W0582, W0583 and W0584 detections to warn when the number of
|
63
|
+
parameters is greater than the number of arguments.
|
64
|
+
- Fix W0581 detection to warn when the number of arguments in
|
65
|
+
current function call is greater than the number of arguments in
|
66
|
+
previous function calls.
|
67
|
+
- Revise specification of W0541 and W0832 detections to warn at the
|
68
|
+
inline assembly code.
|
69
|
+
|
70
|
+
Fri Apr 27 14:18:05 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
71
|
+
|
72
|
+
* lib/adlint/cpp/message.rb : Revise specification of W0541 and W0832
|
73
|
+
detections to warn at the inline assembly code.
|
74
|
+
|
75
|
+
Fri Apr 27 13:40:05 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
76
|
+
|
77
|
+
* lib/adlint/c/message.rb : Fix W0581 detection to warn when the
|
78
|
+
number of arguments in current function call is greater than the
|
79
|
+
number of arguments in previous function calls.
|
80
|
+
|
81
|
+
* lib/adlint/c/message.rb : Fix W0582, W0583 and W0584 detections to
|
82
|
+
warn when the number of parameters is greater than the number of
|
83
|
+
arguments.
|
84
|
+
|
85
|
+
Fri Apr 27 11:50:47 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
86
|
+
|
87
|
+
* release.rc : 1.7.5
|
88
|
+
- Fix W0459 and W0460 detections not to warn about inner variables
|
89
|
+
owned by a temporary variable.
|
90
|
+
- Fix W0461 and W0462 detections not to warn when the length omitted
|
91
|
+
array parameter is specified as an argument.
|
92
|
+
- Fix W1031 detection not to warn when the storage-class-specifier
|
93
|
+
of the object declaration is explicitly specified and the
|
94
|
+
storage-class-specifier of following object definition is omitted.
|
95
|
+
- Fix W0581, W0582, W0583 and W0584 detections not to warn when the
|
96
|
+
corresponding types of argument and parameter are array-array or
|
97
|
+
array-pointer pair.
|
98
|
+
|
99
|
+
Fri Apr 27 11:20:10 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
100
|
+
|
101
|
+
* lib/adlint/c/message.rb : Fix W0581, W0582, W0583 and W0584
|
102
|
+
detections not to warn when the corresponding types of argument and
|
103
|
+
parameter are array-array or array-pointer pair.
|
104
|
+
|
105
|
+
* share/demo/invalid_call/invalid_call.c : Add sample code.
|
106
|
+
|
107
|
+
Fri Apr 27 10:19:32 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
108
|
+
|
109
|
+
* lib/adlint/c/message.rb : Fix W1031 detection not to warn when the
|
110
|
+
storage-class-specifier of the object declaration is explicitly
|
111
|
+
specified and the storage-class-specifier of following object
|
112
|
+
definition is omitted.
|
113
|
+
|
114
|
+
Thu Apr 26 14:40:36 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
115
|
+
|
116
|
+
* lib/adlint/c/message.rb : Fix W0461 and W0462 detections not to warn
|
117
|
+
when the length omitted array parameter is specified as an argument.
|
118
|
+
* lib/adlint/c/value.rb : Ditto.
|
119
|
+
|
120
|
+
Thu Apr 26 14:31:52 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
121
|
+
|
122
|
+
* lib/adlint/c/object.rb : Fix W0459 and W0460 detections not to warn
|
123
|
+
about inner variables owned by a temporary variable.
|
124
|
+
|
125
|
+
Thu Apr 26 09:28:26 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
126
|
+
|
127
|
+
* release.rc : 1.7.4
|
128
|
+
- Fix bad necessity determination of value version forking.
|
129
|
+
- Fix bad necessity determination of value recovery at leaving a
|
130
|
+
versioning group of the value version management.
|
131
|
+
- Remove redundant original value's snapshot of the value version
|
132
|
+
management.
|
133
|
+
|
134
|
+
Thu Apr 26 06:22:54 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
135
|
+
|
136
|
+
* lib/adlint/c/value.rb : Remove redundant original value's snapshot
|
137
|
+
of the value version management.
|
138
|
+
|
139
|
+
Wed Apr 25 23:17:06 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
140
|
+
|
141
|
+
* lib/adlint/c/value.rb : Fix bad necessity determination of value
|
142
|
+
version forking.
|
143
|
+
|
144
|
+
* lib/adlint/c/value.rb : Fix bad necessity determination of value
|
145
|
+
recovery at leaving a versioning group of the value version
|
146
|
+
management.
|
147
|
+
|
148
|
+
Wed Apr 25 19:13:39 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
149
|
+
|
150
|
+
* release.rc : 1.7.3
|
151
|
+
- Fix buggy new variable value version management in order not to
|
152
|
+
mismerge value versions at end of a branch group.
|
153
|
+
|
154
|
+
Wed Apr 25 18:36:53 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
155
|
+
|
156
|
+
* lib/adlint/c/value.rb : Fix buggy new variable value version
|
157
|
+
management in order not to mismerge value versions at end of a branch
|
158
|
+
group.
|
159
|
+
|
160
|
+
Tue Apr 24 19:11:55 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
161
|
+
|
162
|
+
* release.rc : 1.7.2
|
163
|
+
- Fix buggy new variable value version management in order not to
|
164
|
+
misunderstand that the effective branches in switch-statement are
|
165
|
+
deadcodes.
|
166
|
+
|
167
|
+
Tue Apr 24 18:31:18 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
168
|
+
|
169
|
+
* lib/adlint/c/value.rb : Fix buggy new variable value version
|
170
|
+
management in order not to misunderstand that the effective branches
|
171
|
+
in switch-statement are deadcodes.
|
172
|
+
|
173
|
+
Tue Apr 23 22:21:04 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
174
|
+
|
175
|
+
* release.rc : 1.7.1
|
176
|
+
- Revise data structure of the variable value versioning in order not
|
177
|
+
to smother narrowed values in branches without reassignments.
|
178
|
+
- Revise default value of uninitialized global or static variables to
|
179
|
+
arbitrary value from 0.
|
180
|
+
- Fix interpretation environment to correctly manage value versions
|
181
|
+
of inner variables of global array or composite typed variables.
|
182
|
+
|
183
|
+
Tue Apr 23 18:45:14 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
184
|
+
|
185
|
+
* lib/adlint/c/value.rb : Revise data structure of the variable value
|
186
|
+
versioning in order not to smother narrowed values in branches
|
187
|
+
without reassignments.
|
188
|
+
|
189
|
+
* lib/adlint/c/object.rb : Revise default value of uninitialized global
|
190
|
+
or static variables to arbitrary value from 0.
|
191
|
+
|
192
|
+
* lib/adlint/c/branch.rb : Rename unfavorite method names.
|
193
|
+
* lib/adlint/c/environ.rb : Ditto.
|
194
|
+
* lib/adlint/c/interp.rb : Ditto.
|
195
|
+
* lib/adlint/c/object.rb : Ditto.
|
196
|
+
|
197
|
+
* lib/adlint/c/environ.rb : Fix interpretation environment to correctly
|
198
|
+
manage value versions of inner variables of global array or composite
|
199
|
+
typed variables.
|
200
|
+
* lib/adlint/c/object.rb : Ditto.
|
201
|
+
|
202
|
+
Tue Apr 10 18:27:50 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
203
|
+
|
204
|
+
* release.rc : 1.7.0
|
205
|
+
- This is the initial release candidate for 1.8.0 GA release.
|
206
|
+
- Add W0607 detection.
|
207
|
+
- Add W0608 detection.
|
208
|
+
- Add W0625 detection.
|
209
|
+
- Add W0632 detection.
|
210
|
+
- Add W0633 detection.
|
211
|
+
- Add W0634 detection.
|
212
|
+
- Add W0642 detection.
|
213
|
+
- Add W0711 detection.
|
214
|
+
- Add W0712 detection.
|
215
|
+
- Add W0713 detection.
|
216
|
+
- Add W0714 detection.
|
217
|
+
- Add W0715 detection.
|
218
|
+
- Add W0832 detection.
|
219
|
+
- Fix abend problem when the pathname of #include_next directive is
|
220
|
+
not in the executing environment.
|
221
|
+
- Fix bad FN_UELS (number of incomplete if-else-if statement chains)
|
222
|
+
metric measurement.
|
223
|
+
- Fix W0541 detection to warn once a function only when an inline
|
224
|
+
assembly code is not wrapped by macro.
|
225
|
+
|
226
|
+
Tue Apr 10 18:25:31 2012 Rie Shima <rkakuuchi@users.sourceforge.net>
|
227
|
+
|
228
|
+
* lib/adlint/c/message_shima.rb : Add W0711, W0712, W0713, W0714 and
|
229
|
+
W0715 detections.
|
230
|
+
* lib/adlint/c/phase.rb : Ditto.
|
231
|
+
|
232
|
+
* share/demo/Makefile : Add `logical_expr' demo.
|
233
|
+
* share/demo/logical_expr/logical_expr.c : Ditto.
|
234
|
+
* MANIFEST : Ditto.
|
235
|
+
|
236
|
+
Tue Apr 10 17:55:04 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
237
|
+
|
238
|
+
* lib/adlint/c/syntax.rb : Add logicality determination of expressions.
|
239
|
+
|
240
|
+
Tue Apr 10 17:09:40 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
241
|
+
|
242
|
+
* lib/adlint/lang.rb : Fix phase composition to move up preparation so
|
243
|
+
that commands which depend on both preprocessor and C language
|
244
|
+
processor can be instantiated earlier.
|
245
|
+
* lib/adlint/cpp/phase.rb : Ditto.
|
246
|
+
* lib/adlint/c/phase.rb : Ditto.
|
247
|
+
|
248
|
+
* lib/adlint/cpp/message.rb : Fix W0541 detection to warn once a
|
249
|
+
function only when an inline assembly code is not wrapped by macro.
|
250
|
+
|
251
|
+
* lib/adlint/cpp/message.rb : Add W0832 detection.
|
252
|
+
* lib/adlint/cpp/phase.rb : Ditto.
|
253
|
+
|
254
|
+
* share/demo/inline_asm/inline_asm.c : Add sample code.
|
255
|
+
|
256
|
+
Tue Apr 10 14:10:31 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
257
|
+
|
258
|
+
* lib/adlint/cpp/subst.rb : Revise code substitution notification to
|
259
|
+
pass the matched token array.
|
260
|
+
* lib/adlint/cpp/message.rb : Ditto.
|
261
|
+
|
262
|
+
Tue Apr 10 12:30:13 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
263
|
+
|
264
|
+
* lib/adlint/c/interp.rb : Add function object parameter to
|
265
|
+
notifications of function evaluation.
|
266
|
+
* lib/adlint/c/syntax.rb : Ditto.
|
267
|
+
* lib/adlint/c/metric.rb : Ditto.
|
268
|
+
* lib/adlint/c/code.rb : Ditto.
|
269
|
+
* lib/adlint/c/message.rb : Ditto.
|
270
|
+
|
271
|
+
* lib/adlint/c/object.rb : Change interface of Function#signature to
|
272
|
+
return a FunctionSignature object.
|
273
|
+
|
274
|
+
* lib/adlint/c/message.rb : Add W0625 detection.
|
275
|
+
* lib/adlint/c/phase.rb : Ditto.
|
276
|
+
|
277
|
+
* share/demo/Makefile : Add `typedef_each_src' demo.
|
278
|
+
* share/demo/typedef_each_src/typedef_each_src.c : Ditto.
|
279
|
+
* MANIFEST : Ditto.
|
280
|
+
|
281
|
+
Tue Apr 10 08:43:43 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
282
|
+
|
283
|
+
* etc/mesg.d/en_US/messages.yml : Refine W0688, W0689 and W0690 message
|
284
|
+
text.
|
285
|
+
* share/doc/users_guide_en.texi : Ditto.
|
286
|
+
|
287
|
+
Mon Apr 9 23:21:08 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
288
|
+
|
289
|
+
* lib/adlint/c/metric.rb : Fix bad FN_UELS (number of incomplete
|
290
|
+
if-else-if statement chains) metric measurement.
|
291
|
+
|
292
|
+
* share/demo/Makefile : Add `incomplete_ifelse' demo.
|
293
|
+
* share/demo/incomplete_ifelse/incomplete_ifelse.c : Ditto.
|
294
|
+
* MANIFEST : Ditto.
|
295
|
+
|
296
|
+
Mon Apr 9 20:34:51 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
297
|
+
|
298
|
+
* lib/adlint/c/expr.rb : Add notification about address-expression.
|
299
|
+
* lib/adlint/c/interp.rb : Ditto.
|
300
|
+
* lib/adlint/c/mediator.rb : Ditto.
|
301
|
+
|
302
|
+
* lib/adlint/c/object.rb : Add storage class determination of objects.
|
303
|
+
|
304
|
+
* lib/adlint/c/message.rb : Add W0642 detection.
|
305
|
+
* lib/adlint/c/phase.rb : Ditto.
|
306
|
+
|
307
|
+
* share/demo/Makefile : Add `register_vars' demo.
|
308
|
+
* share/demo/register_vars/register_vars.c : Ditto.
|
309
|
+
* MANIFEST : Ditto.
|
310
|
+
|
311
|
+
Mon Apr 9 13:14:51 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
312
|
+
|
313
|
+
* lib/adlint/cpp/message.rb : Add W0634 detection.
|
314
|
+
* lib/adlint/cpp/phase.rb : Ditto.
|
315
|
+
|
316
|
+
* lib/adlint/cpp/eval.rb : Fix abend problem when the pathname of
|
317
|
+
#include_next directive is not in the executing environment.
|
318
|
+
|
319
|
+
* lib/adlint/cpp/eval.rb : Support mswin path separator in #include or
|
320
|
+
#include_next directives.
|
321
|
+
|
322
|
+
* share/demo/bad_include/bad_include.c : Add sample code.
|
323
|
+
|
324
|
+
Mon Apr 9 12:03:08 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
325
|
+
|
326
|
+
* lib/adlint/cpp/message.rb : Add W0632 and W0633 detections.
|
327
|
+
* lib/adlint/cpp/phase.rb : Ditto.
|
328
|
+
|
329
|
+
* etc/mesg.d/ja_JP/messages.yml : Revise W0632 and W0633 message text.
|
330
|
+
* etc/mesg.d/en_US/messages.yml : Ditto.
|
331
|
+
|
332
|
+
* share/demo/Makefile : Add `bad_include' demo.
|
333
|
+
* share/demo/bad_include/bad_include.c : Ditto.
|
334
|
+
* share/demo/bad_include/test"1".h : Ditto.
|
335
|
+
* share/demo/bad_include/test'1'.h : Ditto.
|
336
|
+
* share/demo/bad_include/test'2'.h : Ditto.
|
337
|
+
|
338
|
+
* share/doc/users_guide_ja.texi : Update W0632 and W0633 message text.
|
339
|
+
* share/doc/users_guide_en.texi : Ditto.
|
340
|
+
|
341
|
+
Mon Apr 9 11:22:39 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
342
|
+
|
343
|
+
* lib/adlint/c/message.rb : Add W0607 and W0608 detections.
|
344
|
+
* lib/adlint/c/phase.rb : Ditto.
|
345
|
+
|
346
|
+
* share/demo/wrap_around/wrap_around.c : Add sample code.
|
347
|
+
|
1
348
|
Fri Apr 6 20:00:34 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
2
349
|
|
3
350
|
* release.ga : 1.6.0
|
@@ -44,7 +391,7 @@ Fri Apr 6 19:49:19 2012 Rie Shima <rkakuuchi@users.sourceforge.net>
|
|
44
391
|
|
45
392
|
Fri Apr 6 19:13:05 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
46
393
|
|
47
|
-
* release.
|
394
|
+
* release.rc : 1.5.5
|
48
395
|
- Fix W1053 detection to warn only about constant expressions.
|
49
396
|
|
50
397
|
Fri Apr 6 19:06:34 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
@@ -54,7 +401,7 @@ Fri Apr 6 19:06:34 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
54
401
|
|
55
402
|
Fri Apr 6 16:44:17 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
56
403
|
|
57
|
-
* release.
|
404
|
+
* release.rc : 1.5.4
|
58
405
|
- Fix abend problem of W0461 and W0462 detections when a function is
|
59
406
|
specified as an argument.
|
60
407
|
|
@@ -65,7 +412,7 @@ Fri Apr 6 15:51:59 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
65
412
|
|
66
413
|
Fri Apr 6 15:35:17 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
67
414
|
|
68
|
-
* release.
|
415
|
+
* release.rc : 1.5.3
|
69
416
|
- Fix degraded W0581, W0639 and W0640 detections.
|
70
417
|
|
71
418
|
Fri Apr 6 15:32:44 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
@@ -75,7 +422,7 @@ Fri Apr 6 15:32:44 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
75
422
|
|
76
423
|
Fri Apr 6 11:48:37 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
77
424
|
|
78
|
-
* release.
|
425
|
+
* release.rc : 1.5.2
|
79
426
|
- Fix W0787, W0788 and W0789 detections to consider variable and
|
80
427
|
function definitions.
|
81
428
|
- Fix W0104 detection not to warn about invariant parameter of array
|
@@ -150,7 +497,7 @@ Thu Apr 5 16:43:55 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
150
497
|
|
151
498
|
Thu Apr 5 15:05:37 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
152
499
|
|
153
|
-
* release.
|
500
|
+
* release.rc : 1.5.1
|
154
501
|
- Add W0579 detection.
|
155
502
|
- Add W0686 detection.
|
156
503
|
- Add W0787 detection.
|
@@ -200,8 +547,8 @@ Tue Apr 3 19:03:44 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
200
547
|
|
201
548
|
Tue Apr 3 16:37:30 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
202
549
|
|
203
|
-
* release.
|
204
|
-
- This is the initial
|
550
|
+
* release.rc : 1.5.0
|
551
|
+
- This is the initial release candidate for 1.6.0 GA release.
|
205
552
|
- Add W0541 detection.
|
206
553
|
- Add W0573 detection.
|
207
554
|
- Add W0685 detection.
|
@@ -424,7 +771,7 @@ Thu Mar 29 10:53:48 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
424
771
|
|
425
772
|
Wed Mar 28 15:30:55 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
426
773
|
|
427
|
-
* release.
|
774
|
+
* release.rc : 1.3.3
|
428
775
|
- Fix interpreter in order to detect W0653 correctly.
|
429
776
|
|
430
777
|
Wed Mar 28 15:24:20 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
@@ -435,7 +782,7 @@ Wed Mar 28 15:24:20 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
435
782
|
|
436
783
|
Wed Mar 28 13:51:55 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
437
784
|
|
438
|
-
* release.
|
785
|
+
* release.rc : 1.3.2
|
439
786
|
- Fix interpreter in order to detect W0255 family, W0459, W0580,
|
440
787
|
W0653, W0654 and W0730 correctly.
|
441
788
|
- Update the user's guide in Japanese.
|
@@ -473,7 +820,7 @@ Wed Mar 28 09:58:58 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
473
820
|
|
474
821
|
Tue Mar 27 17:59:37 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
475
822
|
|
476
|
-
* release.
|
823
|
+
* release.rc : 1.3.1
|
477
824
|
- Add W0737 detection.
|
478
825
|
- Add W0738 detection.
|
479
826
|
- Add W0739 detection.
|
@@ -536,8 +883,8 @@ Tue Mar 27 12:05:03 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
536
883
|
|
537
884
|
Mon Mar 26 17:05:05 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
538
885
|
|
539
|
-
* release.
|
540
|
-
- This is the initial
|
886
|
+
* release.rc : 1.3.0
|
887
|
+
- This is the initial release candidate for 1.4.0 GA release.
|
541
888
|
- Add W0606 detection.
|
542
889
|
- Add W0687 detection.
|
543
890
|
- Add W0695 detection.
|
@@ -695,7 +1042,7 @@ Wed Mar 21 18:50:39 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
695
1042
|
|
696
1043
|
Wed Mar 21 14:36:30 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
697
1044
|
|
698
|
-
* release.
|
1045
|
+
* release.rc : 1.1.2
|
699
1046
|
- Revise specification of W0459 and W0460 detections not to warn when
|
700
1047
|
a pointer argument points to an uninitialized object.
|
701
1048
|
- Fix bad FN_UNUV metric measurement.
|
@@ -718,7 +1065,7 @@ Wed Mar 21 13:03:26 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
718
1065
|
|
719
1066
|
Mon Mar 19 17:48:34 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
720
1067
|
|
721
|
-
* release.
|
1068
|
+
* release.rc : 1.1.1
|
722
1069
|
- Add W0688 detection.
|
723
1070
|
- Add W0689 detection.
|
724
1071
|
- Add W0690 detection.
|
@@ -767,8 +1114,8 @@ Mon Mar 19 14:49:07 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
767
1114
|
|
768
1115
|
Mon Mar 19 12:43:33 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
769
1116
|
|
770
|
-
* release.
|
771
|
-
- This is the initial
|
1117
|
+
* release.rc : 1.1.0
|
1118
|
+
- This is the initial release candidate for 1.2.0 GA release.
|
772
1119
|
- Add W0597 detection.
|
773
1120
|
- Add W0598 detection.
|
774
1121
|
- Add W0599 detection.
|
@@ -820,6 +1167,11 @@ Mon Feb 27 17:39:54 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
820
1167
|
|
821
1168
|
* release.ga : 1.0.0
|
822
1169
|
- This is the initial GA release!
|
1170
|
+
- Support single module analysis.
|
1171
|
+
- Support cross module analysis.
|
1172
|
+
- Support 597 kinds of warning detections.
|
1173
|
+
- Support 14 kinds of code structure extractions.
|
1174
|
+
- Support 15 kinds of code quality metric measurements.
|
823
1175
|
- Fix traits file validation to allow only values greater than 0 as
|
824
1176
|
memory alignment items such as `char_alignment'.
|
825
1177
|
- Correct to run on Ruby 1.9.3-p125 without warnings.
|
@@ -1272,12 +1624,12 @@ Wed Nov 16 20:37:38 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
1272
1624
|
- Fix W0950 detection to warn all constants in the multi demension
|
1273
1625
|
array variable definition.
|
1274
1626
|
- Fix degraded W0088 detection.
|
1275
|
-
- Fix W0459 detection not to warn the array variable initialized
|
1276
|
-
|
1627
|
+
- Fix W0459 detection not to warn the array variable initialized with
|
1628
|
+
the string-literal-specifier.
|
1277
1629
|
- Fix W0423 and W0424 detection to warn the
|
1278
1630
|
prefix-increment/decrement-expression of the nullable pointer.
|
1279
|
-
- Fix W0578 detection not to warn the implicit conversion of
|
1280
|
-
|
1631
|
+
- Fix W0578 detection not to warn the implicit conversion of floating
|
1632
|
+
values.
|
1281
1633
|
- Fix degraded W0777, W0778 and W0779 detection.
|
1282
1634
|
- Fix abend problem of evaluating the function definition which has
|
1283
1635
|
unnamed parameter which type is a user type.
|
@@ -1328,8 +1680,8 @@ Mon Oct 31 18:56:14 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
1328
1680
|
- Add W0629 detection.
|
1329
1681
|
- Fix W0441 detection not to warn about wide character constants.
|
1330
1682
|
- Add W0626 detection.
|
1331
|
-
- Activate `file_encoding' setting in the `project_traits' section
|
1332
|
-
|
1683
|
+
- Activate `file_encoding' setting in the `project_traits' section of
|
1684
|
+
the traits file.
|
1333
1685
|
|
1334
1686
|
Wed Oct 26 22:06:55 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
1335
1687
|
|
@@ -1353,7 +1705,7 @@ Wed Oct 26 22:06:55 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
1353
1705
|
tree at the join point of execution paths.
|
1354
1706
|
- Fix W0073 detection to warn when the unguarded header is included
|
1355
1707
|
immediately after the inclusion of the guarded header.
|
1356
|
-
- Fix bad character encoding of console and file output on
|
1708
|
+
- Fix bad character encoding of console and file output on mswin.
|
1357
1709
|
- Add W0578 detection.
|
1358
1710
|
|
1359
1711
|
Wed Oct 19 17:47:16 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
@@ -1363,15 +1715,15 @@ Wed Oct 19 17:47:16 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
1363
1715
|
- Fix W0030, W0423 and W0424 detection to warn about postfix or
|
1364
1716
|
prefix increment expressions and postfix or prefix decrement
|
1365
1717
|
expressions.
|
1366
|
-
- Fix W0100 detection not to warn about the array of pointers to
|
1367
|
-
|
1718
|
+
- Fix W0100 detection not to warn about the array of pointers to the
|
1719
|
+
const object.
|
1368
1720
|
- Fix FN_NEST metric meassurement so that the nest level of the top
|
1369
1721
|
of functions is 0.
|
1370
1722
|
- Fix computation of the total lines of function definitions so that
|
1371
|
-
the function body is from the line of the function name to the
|
1372
|
-
|
1373
|
-
- Rewrite buggy FN_PATH (
|
1374
|
-
function) measurement.
|
1723
|
+
the function body is from the line of the function name to the line
|
1724
|
+
of `}' token which ends the definition.
|
1725
|
+
- Rewrite buggy FN_PATH (number of estimated static paths per
|
1726
|
+
function) metric measurement.
|
1375
1727
|
- Add W0576 detection.
|
1376
1728
|
- Add W0577 detection.
|
1377
1729
|
|
@@ -1382,8 +1734,8 @@ Thu Oct 13 19:53:19 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
1382
1734
|
- Add W0568 detection.
|
1383
1735
|
- Add W0569 detection.
|
1384
1736
|
- Add W0570 detection.
|
1385
|
-
- Fix W0088 detection not to warn about the controlling expression
|
1386
|
-
|
1737
|
+
- Fix W0088 detection not to warn about the controlling expression of
|
1738
|
+
control statements.
|
1387
1739
|
- Add W0571 detection.
|
1388
1740
|
- Add W0572 detection.
|
1389
1741
|
- Add W0574 detection.
|
@@ -1411,8 +1763,8 @@ Thu Oct 6 16:10:37 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
1411
1763
|
- Add W0560 detection.
|
1412
1764
|
- Add W0561 detection.
|
1413
1765
|
- Add W0562 detection.
|
1414
|
-
- Fix W0100 detection not to warn about the array of const type
|
1415
|
-
|
1766
|
+
- Fix W0100 detection not to warn about the array of const type whose
|
1767
|
+
dimension is greater than 1.
|
1416
1768
|
- Fix W0080 detection not to warn about function local const
|
1417
1769
|
variables.
|
1418
1770
|
- Add W0563 detection.
|
@@ -1428,8 +1780,8 @@ Thu Oct 6 16:10:37 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
1428
1780
|
- Trivial correction to run on Ruby 1.9.3-rc1 without warnings.
|
1429
1781
|
- Fix off-by-one problems in W0001, W0037, W0049, W0050 and W0054
|
1430
1782
|
detection.
|
1431
|
-
- Fix W0549 detection not to warn when the parameter is an operand
|
1432
|
-
|
1783
|
+
- Fix W0549 detection not to warn when the parameter is an operand of
|
1784
|
+
`#' or `##' operator.
|
1433
1785
|
|
1434
1786
|
Tue Oct 4 17:30:33 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
1435
1787
|
|
@@ -1453,8 +1805,8 @@ Fri Sep 30 15:36:31 2011 Yutaka Yanoh <yanoh@users.sourceforge.net>
|
|
1453
1805
|
|
1454
1806
|
* release.alpha : 0.3.2
|
1455
1807
|
- Add W0534 detection.
|
1456
|
-
- Fix bad file path in X0003 error message when `--output-dir'
|
1457
|
-
|
1808
|
+
- Fix bad file path in X0003 error message when `--output-dir' option
|
1809
|
+
specified.
|
1458
1810
|
- Fix bad value domain narrowing problem after improving the
|
1459
1811
|
interpreter on 0.3.1 release.
|
1460
1812
|
- Add W0538 detection.
|
data/INSTALL
CHANGED
@@ -43,9 +43,11 @@ You can evaluate \AdLint by following instructions.
|
|
43
43
|
|
44
44
|
First, copy `intro_demo' project into your workspace. "+adlint+ +--prefix+"
|
45
45
|
command prints the prefix pathname of the \AdLint installation directory.
|
46
|
+
|
46
47
|
% cp -r `adlint --prefix`/share/demo/intro_demo .
|
47
48
|
|
48
49
|
Second, generate configuration files for \AdLint.
|
50
|
+
|
49
51
|
% cd intro_demo
|
50
52
|
% adlintize
|
51
53
|
|
@@ -60,6 +62,7 @@ Following files will be generated.
|
|
60
62
|
* [+adlint_files.txt+] List file for sh script and bat file.
|
61
63
|
|
62
64
|
Finally, do analysis.
|
65
|
+
|
63
66
|
% make verbose-all
|
64
67
|
adlint --verbose -t adlint_traits.yml -o . intro_demo.c
|
65
68
|
intro_demo.c [fin] |============================| 0.401s
|
data/MANIFEST
CHANGED
@@ -113,6 +113,9 @@ share/demo/bad_comment/bad_comment.c
|
|
113
113
|
share/demo/bad_const/bad_const.c
|
114
114
|
share/demo/bad_conv/bad_conv.c
|
115
115
|
share/demo/bad_enum/bad_enum.c
|
116
|
+
share/demo/bad_include/bad_include.c
|
117
|
+
share/demo/bad_include/test'1'.h
|
118
|
+
share/demo/bad_include/test'2'.h
|
116
119
|
share/demo/bad_indent/bad_indent.c
|
117
120
|
share/demo/bad_init/bad_init.c
|
118
121
|
share/demo/bad_label/bad_label.c
|
@@ -135,6 +138,7 @@ share/demo/id_hiding/id_hiding.c
|
|
135
138
|
share/demo/ill_defined/ill_defined.c
|
136
139
|
share/demo/implicit_conv/implicit_conv.c
|
137
140
|
share/demo/implicit_int/implicit_int.c
|
141
|
+
share/demo/incomplete_ifelse/incomplete_ifelse.c
|
138
142
|
share/demo/incomplete_type/incomplete_type.c
|
139
143
|
share/demo/indirect_recur/indirect_recur_1.c
|
140
144
|
share/demo/indirect_recur/indirect_recur_1.h
|
@@ -151,6 +155,7 @@ share/demo/invalid_call/invalid_call.c
|
|
151
155
|
share/demo/kandr_fundef/kandr_fundef.c
|
152
156
|
share/demo/line_comment/line_comment.c
|
153
157
|
share/demo/local_decl/local_decl.c
|
158
|
+
share/demo/logical_expr/logical_expr.c
|
154
159
|
share/demo/logical_trick/logical_trick.c
|
155
160
|
share/demo/long_sym/long_sym.c
|
156
161
|
share/demo/loop_var/loop_var.c
|
@@ -185,6 +190,7 @@ share/demo/output_by_param/output_by_param.c
|
|
185
190
|
share/demo/overflow/overflow.c
|
186
191
|
share/demo/press_release/press_release.c
|
187
192
|
share/demo/redundant_select/redundant_select.c
|
193
|
+
share/demo/register_vars/register_vars.c
|
188
194
|
share/demo/reserved_ident/reserved_ident.c
|
189
195
|
share/demo/retn_lvar_addr/retn_lvar_addr.c
|
190
196
|
share/demo/sequence_point/sequence_point.c
|
@@ -193,6 +199,7 @@ share/demo/should_be_typedef/should_be_typedef.c
|
|
193
199
|
share/demo/static_paths/static_paths.c
|
194
200
|
share/demo/static_vars/static_vars.c
|
195
201
|
share/demo/tag_hiding/tag_hiding.c
|
202
|
+
share/demo/typedef_each_src/typedef_each_src.c
|
196
203
|
share/demo/tricky_incdec/tricky_incdec.c
|
197
204
|
share/demo/undefined_macro/undefined_macro.c
|
198
205
|
share/demo/uninit_vars/uninit_vars.c
|