adlint 2.4.6 → 2.4.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (306) hide show
  1. data/ChangeLog +163 -0
  2. data/MANIFEST +12 -0
  3. data/NEWS +20 -4
  4. data/etc/conf.d/x86_64-ubuntu_12.04/cinit-gcc_4.6.3.erb +2 -2
  5. data/etc/mesg.d/c_builtin/en_US/messages.yml +1 -1
  6. data/etc/mesg.d/c_builtin/ja_JP/messages.yml +1 -1
  7. data/etc/mesg.d/core/en_US/messages.yml +1 -1
  8. data/etc/mesg.d/core/ja_JP/messages.yml +1 -1
  9. data/features/code_check/E0013.feature +0 -2
  10. data/features/code_check/W0001.feature +0 -2
  11. data/features/code_check/W0002.feature +0 -2
  12. data/features/code_check/W0003.feature +0 -2
  13. data/features/code_check/W0007.feature +0 -2
  14. data/features/code_check/W0010.feature +1 -3
  15. data/features/code_check/W0013.feature +0 -2
  16. data/features/code_check/W0016.feature +0 -2
  17. data/features/code_check/W0017.feature +0 -2
  18. data/features/code_check/W0025.feature +0 -2
  19. data/features/code_check/W0026.feature +0 -2
  20. data/features/code_check/W0070.feature +0 -2
  21. data/features/code_check/W0071.feature +0 -2
  22. data/features/code_check/W0093.feature +0 -2
  23. data/features/code_check/W0104.feature +0 -2
  24. data/features/code_check/W0109.feature +0 -2
  25. data/features/code_check/W0119.feature +0 -2
  26. data/features/code_check/W0120.feature +0 -2
  27. data/features/code_check/W0121.feature +0 -2
  28. data/features/code_check/W0122.feature +0 -2
  29. data/features/code_check/W0123.feature +0 -2
  30. data/features/code_check/W0124.feature +0 -2
  31. data/features/code_check/W0125.feature +0 -2
  32. data/features/code_check/W0126.feature +0 -2
  33. data/features/code_check/W0127.feature +0 -2
  34. data/features/code_check/W0128.feature +0 -2
  35. data/features/code_check/W0129.feature +0 -2
  36. data/features/code_check/W0130.feature +0 -2
  37. data/features/code_check/W0131.feature +0 -2
  38. data/features/code_check/W0132.feature +0 -2
  39. data/features/code_check/W0133.feature +0 -2
  40. data/features/code_check/W0134.feature +0 -2
  41. data/features/code_check/W0135.feature +0 -2
  42. data/features/code_check/W0136.feature +0 -2
  43. data/features/code_check/W0137.feature +0 -2
  44. data/features/code_check/W0138.feature +0 -2
  45. data/features/code_check/W0139.feature +0 -2
  46. data/features/code_check/W0140.feature +0 -2
  47. data/features/code_check/W0141.feature +0 -2
  48. data/features/code_check/W0142.feature +0 -2
  49. data/features/code_check/W0143.feature +0 -2
  50. data/features/code_check/W0144.feature +0 -2
  51. data/features/code_check/W0145.feature +0 -2
  52. data/features/code_check/W0146.feature +0 -2
  53. data/features/code_check/W0147.feature +0 -2
  54. data/features/code_check/W0148.feature +0 -2
  55. data/features/code_check/W0149.feature +0 -2
  56. data/features/code_check/W0150.feature +0 -2
  57. data/features/code_check/W0151.feature +0 -2
  58. data/features/code_check/W0152.feature +0 -2
  59. data/features/code_check/W0153.feature +0 -2
  60. data/features/code_check/W0154.feature +0 -2
  61. data/features/code_check/W0155.feature +0 -2
  62. data/features/code_check/W0156.feature +0 -2
  63. data/features/code_check/W0157.feature +0 -2
  64. data/features/code_check/W0158.feature +0 -2
  65. data/features/code_check/W0159.feature +0 -2
  66. data/features/code_check/W0160.feature +0 -2
  67. data/features/code_check/W0161.feature +0 -2
  68. data/features/code_check/W0162.feature +0 -2
  69. data/features/code_check/W0163.feature +0 -2
  70. data/features/code_check/W0164.feature +0 -2
  71. data/features/code_check/W0165.feature +0 -2
  72. data/features/code_check/W0166.feature +0 -2
  73. data/features/code_check/W0167.feature +0 -2
  74. data/features/code_check/W0168.feature +0 -2
  75. data/features/code_check/W0169.feature +0 -2
  76. data/features/code_check/W0170.feature +0 -2
  77. data/features/code_check/W0171.feature +0 -2
  78. data/features/code_check/W0172.feature +0 -2
  79. data/features/code_check/W0173.feature +0 -2
  80. data/features/code_check/W0174.feature +0 -2
  81. data/features/code_check/W0175.feature +0 -2
  82. data/features/code_check/W0176.feature +0 -2
  83. data/features/code_check/W0177.feature +0 -2
  84. data/features/code_check/W0178.feature +0 -2
  85. data/features/code_check/W0179.feature +0 -2
  86. data/features/code_check/W0180.feature +0 -2
  87. data/features/code_check/W0181.feature +0 -2
  88. data/features/code_check/W0182.feature +0 -2
  89. data/features/code_check/W0183.feature +0 -2
  90. data/features/code_check/W0184.feature +0 -2
  91. data/features/code_check/W0185.feature +0 -2
  92. data/features/code_check/W0186.feature +0 -2
  93. data/features/code_check/W0187.feature +0 -2
  94. data/features/code_check/W0188.feature +0 -2
  95. data/features/code_check/W0189.feature +0 -2
  96. data/features/code_check/W0190.feature +0 -2
  97. data/features/code_check/W0191.feature +0 -2
  98. data/features/code_check/W0192.feature +0 -2
  99. data/features/code_check/W0193.feature +0 -2
  100. data/features/code_check/W0194.feature +0 -2
  101. data/features/code_check/W0195.feature +0 -2
  102. data/features/code_check/W0196.feature +0 -2
  103. data/features/code_check/W0197.feature +0 -2
  104. data/features/code_check/W0198.feature +0 -2
  105. data/features/code_check/W0199.feature +0 -2
  106. data/features/code_check/W0200.feature +0 -2
  107. data/features/code_check/W0201.feature +0 -2
  108. data/features/code_check/W0202.feature +0 -2
  109. data/features/code_check/W0203.feature +0 -2
  110. data/features/code_check/W0204.feature +0 -2
  111. data/features/code_check/W0205.feature +0 -2
  112. data/features/code_check/W0206.feature +0 -2
  113. data/features/code_check/W0207.feature +0 -2
  114. data/features/code_check/W0208.feature +0 -2
  115. data/features/code_check/W0209.feature +0 -2
  116. data/features/code_check/W0210.feature +0 -2
  117. data/features/code_check/W0211.feature +0 -2
  118. data/features/code_check/W0212.feature +0 -2
  119. data/features/code_check/W0213.feature +0 -2
  120. data/features/code_check/W0214.feature +0 -2
  121. data/features/code_check/W0215.feature +0 -2
  122. data/features/code_check/W0216.feature +0 -2
  123. data/features/code_check/W0217.feature +0 -2
  124. data/features/code_check/W0218.feature +0 -2
  125. data/features/code_check/W0219.feature +0 -2
  126. data/features/code_check/W0220.feature +0 -2
  127. data/features/code_check/W0221.feature +0 -2
  128. data/features/code_check/W0222.feature +0 -2
  129. data/features/code_check/W0223.feature +0 -2
  130. data/features/code_check/W0224.feature +0 -2
  131. data/features/code_check/W0225.feature +0 -2
  132. data/features/code_check/W0226.feature +0 -2
  133. data/features/code_check/W0227.feature +0 -2
  134. data/features/code_check/W0228.feature +0 -2
  135. data/features/code_check/W0229.feature +0 -2
  136. data/features/code_check/W0230.feature +0 -2
  137. data/features/code_check/W0231.feature +0 -2
  138. data/features/code_check/W0232.feature +0 -2
  139. data/features/code_check/W0233.feature +0 -2
  140. data/features/code_check/W0234.feature +0 -2
  141. data/features/code_check/W0235.feature +0 -2
  142. data/features/code_check/W0236.feature +0 -2
  143. data/features/code_check/W0237.feature +0 -2
  144. data/features/code_check/W0238.feature +0 -2
  145. data/features/code_check/W0239.feature +0 -2
  146. data/features/code_check/W0240.feature +0 -2
  147. data/features/code_check/W0241.feature +0 -2
  148. data/features/code_check/W0242.feature +0 -2
  149. data/features/code_check/W0243.feature +0 -2
  150. data/features/code_check/W0244.feature +0 -2
  151. data/features/code_check/W0245.feature +0 -2
  152. data/features/code_check/W0246.feature +0 -2
  153. data/features/code_check/W0247.feature +0 -2
  154. data/features/code_check/W0248.feature +0 -2
  155. data/features/code_check/W0249.feature +0 -2
  156. data/features/code_check/W0250.feature +0 -2
  157. data/features/code_check/W0251.feature +0 -2
  158. data/features/code_check/W0252.feature +0 -2
  159. data/features/code_check/W0253.feature +0 -2
  160. data/features/code_check/W0254.feature +0 -2
  161. data/features/code_check/W0425.feature +0 -2
  162. data/features/code_check/W0431.feature +0 -2
  163. data/features/code_check/W0432.feature +0 -2
  164. data/features/code_check/W0477.feature +0 -2
  165. data/features/code_check/W0478.feature +0 -2
  166. data/features/code_check/W0479.feature +0 -2
  167. data/features/code_check/W0480.feature +0 -2
  168. data/features/code_check/W0481.feature +0 -2
  169. data/features/code_check/W0482.feature +0 -2
  170. data/features/code_check/W0483.feature +0 -2
  171. data/features/code_check/W0488.feature +132 -0
  172. data/features/code_check/W0489.feature +78 -0
  173. data/features/code_check/W0490.feature +83 -0
  174. data/features/code_check/W0495.feature +60 -0
  175. data/features/code_check/W0496.feature +63 -0
  176. data/features/code_check/W0497.feature +65 -0
  177. data/features/code_check/W0498.feature +120 -0
  178. data/features/code_check/W0499.feature +63 -0
  179. data/features/code_check/W0500.feature +66 -0
  180. data/features/code_check/W0501.feature +69 -0
  181. data/features/code_check/W0502.feature +64 -0
  182. data/features/code_check/W0573.feature +0 -2
  183. data/features/code_check/W0583.feature +0 -2
  184. data/features/code_check/W0606.feature +0 -2
  185. data/features/code_check/W0635.feature +0 -2
  186. data/features/code_check/W0641.feature +0 -2
  187. data/features/code_check/W0643.feature +0 -2
  188. data/features/code_check/W0644.feature +0 -2
  189. data/features/code_check/W0645.feature +0 -2
  190. data/features/code_check/W0646.feature +0 -2
  191. data/features/code_check/W0649.feature +0 -2
  192. data/features/code_check/W0650.feature +0 -2
  193. data/features/code_check/W0655.feature +43 -0
  194. data/features/code_check/W0685.feature +0 -2
  195. data/features/code_check/W0686.feature +0 -2
  196. data/features/code_check/W0687.feature +0 -2
  197. data/features/code_check/W0688.feature +0 -2
  198. data/features/code_check/W0689.feature +0 -2
  199. data/features/code_check/W0690.feature +0 -2
  200. data/features/code_check/W0691.feature +0 -2
  201. data/features/code_check/W0692.feature +0 -2
  202. data/features/code_check/W0694.feature +0 -2
  203. data/features/code_check/W0695.feature +0 -2
  204. data/features/code_check/W0697.feature +0 -2
  205. data/features/code_check/W0698.feature +0 -2
  206. data/features/code_check/W0699.feature +0 -2
  207. data/features/code_check/W0700.feature +0 -2
  208. data/features/code_check/W0703.feature +0 -2
  209. data/features/code_check/W0705.feature +6 -2
  210. data/features/code_check/W0707.feature +4 -2
  211. data/features/code_check/W0711.feature +0 -2
  212. data/features/code_check/W0712.feature +0 -2
  213. data/features/code_check/W0713.feature +0 -2
  214. data/features/code_check/W0714.feature +0 -2
  215. data/features/code_check/W0715.feature +0 -2
  216. data/features/code_check/W0716.feature +0 -2
  217. data/features/code_check/W0717.feature +0 -2
  218. data/features/code_check/W0718.feature +0 -2
  219. data/features/code_check/W0719.feature +0 -2
  220. data/features/code_check/W0723.feature +0 -2
  221. data/features/code_check/W0726.feature +0 -2
  222. data/features/code_check/W0732.feature +0 -2
  223. data/features/code_check/W0733.feature +0 -2
  224. data/features/code_check/W0734.feature +0 -2
  225. data/features/code_check/W0735.feature +0 -2
  226. data/features/code_check/W0745.feature +1 -2
  227. data/features/code_check/W0747.feature +0 -2
  228. data/features/code_check/W0748.feature +0 -2
  229. data/features/code_check/W0749.feature +0 -2
  230. data/features/code_check/W0750.feature +0 -2
  231. data/features/code_check/W0751.feature +0 -2
  232. data/features/code_check/W0752.feature +0 -2
  233. data/features/code_check/W0753.feature +0 -2
  234. data/features/code_check/W0754.feature +0 -2
  235. data/features/code_check/W0755.feature +0 -2
  236. data/features/code_check/W0756.feature +0 -2
  237. data/features/code_check/W0757.feature +0 -2
  238. data/features/code_check/W0758.feature +0 -2
  239. data/features/code_check/W0759.feature +0 -2
  240. data/features/code_check/W0760.feature +0 -2
  241. data/features/code_check/W0761.feature +0 -2
  242. data/features/code_check/W0762.feature +0 -2
  243. data/features/code_check/W0763.feature +0 -2
  244. data/features/code_check/W0764.feature +0 -2
  245. data/features/code_check/W0765.feature +0 -2
  246. data/features/code_check/W0766.feature +0 -2
  247. data/features/code_check/W0767.feature +0 -2
  248. data/features/code_check/W0768.feature +0 -2
  249. data/features/code_check/W0769.feature +0 -2
  250. data/features/code_check/W0780.feature +0 -2
  251. data/features/code_check/W0781.feature +0 -2
  252. data/features/code_check/W0783.feature +0 -2
  253. data/features/code_check/W0787.feature +0 -2
  254. data/features/code_check/W0792.feature +0 -2
  255. data/features/code_check/W0793.feature +0 -2
  256. data/features/code_check/W0794.feature +0 -2
  257. data/features/code_check/W0801.feature +0 -2
  258. data/features/code_check/W0805.feature +0 -2
  259. data/features/code_check/W0806.feature +0 -2
  260. data/features/code_check/W0807.feature +0 -2
  261. data/features/code_check/W0808.feature +0 -2
  262. data/features/code_check/W0809.feature +0 -2
  263. data/features/code_check/W0811.feature +0 -2
  264. data/features/code_check/W0830.feature +0 -2
  265. data/features/code_check/W0833.feature +0 -2
  266. data/features/code_check/W0834.feature +1 -3
  267. data/features/code_check/W1026.feature +0 -2
  268. data/features/code_check/W1030.feature +0 -2
  269. data/features/code_check/W1031.feature +0 -2
  270. data/features/code_check/W1039.feature +0 -2
  271. data/features/code_check/W1040.feature +0 -2
  272. data/features/code_check/W1041.feature +0 -2
  273. data/features/code_check/W1046.feature +0 -2
  274. data/features/code_check/W1047.feature +0 -2
  275. data/features/code_check/W1052.feature +0 -2
  276. data/features/code_check/W1066.feature +0 -2
  277. data/features/code_check/W1067.feature +0 -2
  278. data/features/code_check/W1068.feature +0 -2
  279. data/features/code_check/W1069.feature +0 -2
  280. data/features/code_check/W1070.feature +0 -2
  281. data/features/code_check/W1071.feature +0 -2
  282. data/features/code_check/W1072.feature +0 -2
  283. data/features/code_check/W1073.feature +1 -3
  284. data/features/code_check/W1074.feature +3 -4
  285. data/features/code_check/W1075.feature +0 -2
  286. data/features/code_check/W1076.feature +0 -2
  287. data/features/code_check/W1077.feature +0 -2
  288. data/features/code_check/W9001.feature +0 -2
  289. data/features/code_check/W9003.feature +3 -3
  290. data/lib/adlint/c/branch.rb +2 -2
  291. data/lib/adlint/c/environ.rb +3 -3
  292. data/lib/adlint/c/expr.rb +67 -39
  293. data/lib/adlint/c/interp.rb +10 -1
  294. data/lib/adlint/c/object.rb +6 -4
  295. data/lib/adlint/c/parser.rb +1 -1
  296. data/lib/adlint/c/value.rb +27 -10
  297. data/lib/adlint/cpp/constexpr.rb +1 -1
  298. data/lib/adlint/exam/c_builtin/c_check.rb +502 -420
  299. data/lib/adlint/version.rb +2 -2
  300. data/share/doc/developers_guide_ja.html +3 -3
  301. data/share/doc/developers_guide_ja.texi +1 -1
  302. data/share/doc/users_guide_en.html +10 -10
  303. data/share/doc/users_guide_en.texi +8 -8
  304. data/share/doc/users_guide_ja.html +10 -10
  305. data/share/doc/users_guide_ja.texi +8 -8
  306. metadata +15 -3
data/ChangeLog CHANGED
@@ -1,3 +1,166 @@
1
+ Mon Oct 15 13:27:34 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
2
+
3
+ * release.ga : 2.4.10
4
+ - Add value version rollback feature so that the value version
5
+ management is correctly given up at the end of the branch whose
6
+ controlling expression is too complex.
7
+ - Fix value version management in order to completely rollback all
8
+ changes to values of all global variables.
9
+ - Revise evaluation of sizeof-expression and alignof-expression not
10
+ to evaluate operand expression actually.
11
+ - Fix W0488, W0489, W0490, W0495, W0496, W0497, W0498, W0499, W0500,
12
+ W0501 and W0502 detections to warn when a problematic expression is
13
+ grouped entirely.
14
+
15
+ Fri Oct 12 17:39:30 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
16
+
17
+ * release.rc : 2.4.9
18
+ - Fix W0488 detection to warn about a standalone
19
+ array-subscript-expression as an operand of a
20
+ logical-and-expression or a logical-or-expression.
21
+ - Fix W0499, W0500, W0501 and W0502 detections to warn when a
22
+ problematic expression is grouped entirely.
23
+ - Fix interpreter to add missing notification about evaluation of the
24
+ sizeof-expression.
25
+
26
+ Fri Oct 12 17:21:38 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
27
+
28
+ * features/code_check/W0655.feature : Add W0655 specification.
29
+ * MANIFEST : Ditto.
30
+
31
+ * lib/adlint/c/expr.rb : Fix interpreter to add missing notification
32
+ about evaluation of the sizeof-expression.
33
+ * lib/adlint/c/interp.rb : Ditto.
34
+
35
+ Fri Oct 12 15:07:28 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
36
+
37
+ * features/code_check/W0502.feature : Add W0502 specification.
38
+ * MANIFEST : Ditto.
39
+
40
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0502 detection to warn
41
+ when a problematic expression is grouped entirely.
42
+
43
+ Fri Oct 12 14:27:12 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
44
+
45
+ * features/code_check/W0501.feature : Add W0501 specification.
46
+ * MANIFEST : Ditto.
47
+
48
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0501 detection to warn
49
+ when a problematic expression is grouped entirely.
50
+
51
+ Fri Oct 12 13:59:59 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
52
+
53
+ * features/code_check/W0500.feature : Add W0500 specification.
54
+ * MANIFEST : Ditto.
55
+
56
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0500 detection to warn
57
+ when a problematic expression is grouped entirely.
58
+
59
+ Fri Oct 12 13:17:07 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
60
+
61
+ * features/code_check/W0499.feature : Add W0499 specification.
62
+ * MANIFEST : Ditto.
63
+
64
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0499 detection to warn
65
+ when a problematic expression is grouped entirely.
66
+
67
+ Fri Oct 12 10:55:04 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
68
+
69
+ * features/code_check/W0488.feature : Add W0488 specification to
70
+ reproduce a known bug.
71
+
72
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0488 detection to warn
73
+ about a standalone array-subscript-expression as an operand of a
74
+ logical-and-expression or a logical-or-expression.
75
+
76
+ Thu Oct 11 21:00:18 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
77
+
78
+ * release.rc : 2.4.7
79
+ - Add value version rollback feature so that the value version
80
+ management is correctly given up at the end of the branch whose
81
+ controlling expression is too complex.
82
+ - Fix value version management in order to completely rollback all
83
+ changes to values of all global variables.
84
+ - Revise evaluation of sizeof-expression and alignof-expression not
85
+ to evaluate operand expression actually.
86
+ - Fix W0488, W0489, W0490, W0495, W0496, W0497 and W0498 detections
87
+ to warn when a problematic expression is grouped entirely.
88
+
89
+ Thu Oct 11 20:49:03 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
90
+
91
+ * features/code_check/W0497.feature : Add W0497 specification.
92
+ * MANIFEST : Ditto.
93
+
94
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0497 detection to warn
95
+ when a problematic expression is grouped entirely.
96
+
97
+ Thu Oct 11 20:19:37 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
98
+
99
+ * features/code_check/W0496.feature : Add W0496 specification.
100
+ * MANIFEST : Ditto.
101
+
102
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0496 detection to warn
103
+ when a problematic expression is grouped entirely.
104
+
105
+ Thu Oct 11 19:57:17 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
106
+
107
+ * features/code_check/W0495.feature : Add W0495 specification.
108
+ * MANIFEST : Ditto.
109
+
110
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0495 detection to warn
111
+ when a problematic expression is grouped entirely.
112
+
113
+ Thu Oct 11 19:31:31 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
114
+
115
+ * features/code_check/W0490.feature : Add W0490 specification.
116
+ * MANIFEST : Ditto.
117
+
118
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0490 detection to warn
119
+ when a problematic expression is grouped entirely.
120
+
121
+ Thu Oct 11 18:44:11 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
122
+
123
+ * features/code_check/W0489.feature : Add W0489 specification.
124
+ * MANIFEST : Ditto.
125
+
126
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0489 detection to warn
127
+ when a problematic expression is grouped entirely.
128
+
129
+ Thu Oct 11 18:10:53 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
130
+
131
+ * features/code_check/W0488.feature : Add W0488 specification.
132
+ * MANIFEST : Ditto.
133
+
134
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0488 detection to warn
135
+ when a problematic expression is grouped entirely.
136
+
137
+ Thu Oct 11 17:19:40 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
138
+
139
+ * features/code_check/W0498.feature : Add W0498 specification.
140
+ * MANIFEST : Ditto.
141
+
142
+ * lib/adlint/exam/c_builtin/c_check.rb : Fix W0498 detection to warn
143
+ when a problematic expression is grouped entirely.
144
+
145
+ Thu Oct 11 14:36:53 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
146
+
147
+ * lib/adlint/c/interp.rb : Revise evaluation of sizeof-expression and
148
+ alignof-expression not to evaluate operand expression actually.
149
+
150
+ Thu Oct 11 11:27:46 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
151
+
152
+ * lib/adlint/c/value.rb : Fix value version management in order to
153
+ completely rollback all changes to values of all global variables.
154
+
155
+ Wed Oct 10 18:14:38 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
156
+
157
+ * lib/adlint/c/value.rb : Add value version rollback feature so that
158
+ the value version management is correctly given up at the end of the
159
+ branch whose controlling expression is too complex.
160
+ * lib/adlint/c/branch.rb : Ditto.
161
+ * lib/adlint/c/environ.rb : Ditto.
162
+ * lib/adlint/c/object.rb : Ditto.
163
+
1
164
  Tue Oct 9 10:49:00 2012 Yutaka Yanoh <yanoh@users.sourceforge.net>
2
165
 
3
166
  * release.ga : 2.4.6
data/MANIFEST CHANGED
@@ -194,6 +194,17 @@ features/code_check/W0480.feature
194
194
  features/code_check/W0481.feature
195
195
  features/code_check/W0482.feature
196
196
  features/code_check/W0483.feature
197
+ features/code_check/W0488.feature
198
+ features/code_check/W0489.feature
199
+ features/code_check/W0490.feature
200
+ features/code_check/W0495.feature
201
+ features/code_check/W0496.feature
202
+ features/code_check/W0497.feature
203
+ features/code_check/W0498.feature
204
+ features/code_check/W0499.feature
205
+ features/code_check/W0500.feature
206
+ features/code_check/W0501.feature
207
+ features/code_check/W0502.feature
197
208
  features/code_check/W0573.feature
198
209
  features/code_check/W0583.feature
199
210
  features/code_check/W0606.feature
@@ -205,6 +216,7 @@ features/code_check/W0645.feature
205
216
  features/code_check/W0646.feature
206
217
  features/code_check/W0649.feature
207
218
  features/code_check/W0650.feature
219
+ features/code_check/W0655.feature
208
220
  features/code_check/W0685.feature
209
221
  features/code_check/W0686.feature
210
222
  features/code_check/W0687.feature
data/NEWS CHANGED
@@ -21,18 +21,34 @@
21
21
 
22
22
  ++
23
23
 
24
+ === \AdLint 2.4.10 is released (2012-10-15)
25
+
26
+ ==== Changes since the 2.4.6 release
27
+
28
+ * Add value version rollback feature so that the value version management is
29
+ correctly given up at the end of the branch whose controlling expression is
30
+ too complex
31
+ * Fix value version management in order to completely rollback all changes to
32
+ values of all global variables
33
+ * Revise evaluation of sizeof-expression and alignof-expression not to evaluate
34
+ operand expression actually
35
+ * Fix W0488, W0489, W0490, W0495, W0496, W0497, W0498, W0499, W0500, W0501 and
36
+ W0502 detections to warn when a problematic expression is grouped entirely
37
+
38
+ See the file
39
+ {ChangeLog}[http://adlint.sourceforge.net/pmwiki/upload.d/Main/ChangeLog]
40
+ for more details.
41
+
24
42
  === \AdLint 2.4.6 is released (2012-10-09)
25
43
 
44
+ ==== Changes since the 2.4.0 release
45
+
26
46
  * Fix bad controlling statement evaluation in order to manage value domain of
27
47
  the controlling variable correctly
28
48
  * Fix bad argument type specification of `%s', `%p' and `%n'
29
49
  conversion-specifiers of *printf standard functions in order to detect W0635
30
50
  correctly
31
51
 
32
- See the file
33
- {ChangeLog}[http://adlint.sourceforge.net/pmwiki/upload.d/Main/ChangeLog]
34
- for more details.
35
-
36
52
  === \AdLint 2.4.0 is released (2012-09-21)
37
53
 
38
54
  ==== Changes since the 2.2.0 release
@@ -53,7 +53,7 @@
53
53
  #define _FORTIFY_SOURCE 2
54
54
  #define __SIZEOF_INT__ 4
55
55
  #define __SIZEOF_POINTER__ 8
56
- #define __USER_LABEL_PREFIX__
56
+ #define __USER_LABEL_PREFIX__
57
57
  #define __STDC_HOSTED__ 1
58
58
  #define __LDBL_HAS_INFINITY__ 1
59
59
  #define __FLT_EPSILON__ 1.19209289550781250000e-7F
@@ -95,7 +95,7 @@
95
95
  #define __LP64__ 1
96
96
  #define __DECIMAL_BID_FORMAT__ 1
97
97
  #define __DEC128_MIN__ 1E-6143DL
98
- #define __REGISTER_PREFIX__
98
+ #define __REGISTER_PREFIX__
99
99
  #define __UINT16_MAX__ 65535
100
100
  #define __DBL_HAS_DENORM__ 1
101
101
  #define __UINT8_TYPE__ unsigned char
@@ -49,7 +49,7 @@
49
49
  # - "ERR:X99"
50
50
  # format: "Your custom message for the error of E9999."
51
51
 
52
- version: "2.4.6"
52
+ version: "2.4.10"
53
53
 
54
54
  message_definition:
55
55
  W0001:
@@ -49,7 +49,7 @@
49
49
  # - "ERR:X99"
50
50
  # format: "Your custom message for the error of E9999."
51
51
 
52
- version: "2.4.6"
52
+ version: "2.4.10"
53
53
 
54
54
  message_definition:
55
55
  W0001:
@@ -49,7 +49,7 @@
49
49
  # - "ERR:X99"
50
50
  # format: "Your custom message for the error of E9999."
51
51
 
52
- version: "2.4.6"
52
+ version: "2.4.10"
53
53
 
54
54
  message_definition:
55
55
  X0001:
@@ -49,7 +49,7 @@
49
49
  # - "ERR:X99"
50
50
  # format: "Your custom message for the error of E9999."
51
51
 
52
- version: "2.4.6"
52
+ version: "2.4.10"
53
53
 
54
54
  message_definition:
55
55
  X0001:
@@ -30,5 +30,3 @@ Feature: E0013
30
30
  | W0555 | 1 | 5 |
31
31
  | W0589 | 1 | 5 |
32
32
  | W0591 | 1 | 5 |
33
-
34
- # vim:ts=2:sw=2:sts=2:et:
@@ -39,5 +39,3 @@ Feature: W0001
39
39
  | W0629 | 1 | 13 |
40
40
  | W0001 | 6 | 41 |
41
41
  | W0628 | 1 | 13 |
42
-
43
- # vim:ts=2:sw=2:sts=2:et:
@@ -64,5 +64,3 @@ Feature: W0002
64
64
  | W0002 | 1 | 5 |
65
65
  | W0458 | 1 | 10 |
66
66
  | W0628 | 1 | 5 |
67
-
68
- # vim:ts=2:sw=2:sts=2:et:
@@ -130,5 +130,3 @@ Feature: W0003
130
130
  | W0104 | 1 | 13 |
131
131
  | W0538 | 6 | 5 |
132
132
  | W0628 | 1 | 5 |
133
-
134
- # vim:ts=2:sw=2:sts=2:et:
@@ -270,5 +270,3 @@ Feature: W0007
270
270
  | W0629 | 1 | 12 |
271
271
  | W0538 | 9 | 5 |
272
272
  | W0628 | 1 | 12 |
273
-
274
- # vim:ts=2:sw=2:sts=2:et:
@@ -72,7 +72,5 @@ Feature: W0010
72
72
  | W0104 | 1 | 20 |
73
73
  | W0104 | 1 | 27 |
74
74
  | W0629 | 1 | 12 |
75
- | W0501 | 3 | 12 |
75
+ | W0501 | 3 | 20 |
76
76
  | W0628 | 1 | 12 |
77
-
78
- # vim:ts=2:sw=2:sts=2:et:
@@ -193,5 +193,3 @@ Feature: W0013
193
193
  | W1076 | 1 | 13 |
194
194
  | W0629 | 1 | 13 |
195
195
  | W0628 | 1 | 13 |
196
-
197
- # vim:ts=2:sw=2:sts=2:et:
@@ -196,5 +196,3 @@ Feature: W0016
196
196
  | W0104 | 3 | 13 |
197
197
  | W0947 | 5 | 28 |
198
198
  | W0628 | 3 | 5 |
199
-
200
- # vim:ts=2:sw=2:sts=2:et:
@@ -266,5 +266,3 @@ Feature: W0017
266
266
  | W1071 | 3 | 5 |
267
267
  | W0947 | 7 | 30 |
268
268
  | W0628 | 3 | 5 |
269
-
270
- # vim:ts=2:sw=2:sts=2:et:
@@ -62,5 +62,3 @@ Feature: W0025
62
62
  When I successfully run `adlint fixture.c` on noarch
63
63
  Then the output should exactly match with:
64
64
  | mesg | line | column |
65
-
66
- # vim:ts=2:sw=2:sts=2:et:
@@ -139,5 +139,3 @@ Feature: W0026
139
139
  | mesg | line | column |
140
140
  | W0070 | 1 | 1 |
141
141
  | W0628 | 3 | 6 |
142
-
143
- # vim:ts=2:sw=2:sts=2:et:
@@ -47,5 +47,3 @@ Feature: W0070
47
47
  | mesg | line | column |
48
48
  | W0117 | 3 | 5 |
49
49
  | W0628 | 3 | 5 |
50
-
51
- # vim:ts=2:sw=2:sts=2:et:
@@ -47,5 +47,3 @@ Feature: W0071
47
47
  | mesg | line | column |
48
48
  | W0117 | 3 | 5 |
49
49
  | W0628 | 3 | 5 |
50
-
51
- # vim:ts=2:sw=2:sts=2:et:
@@ -86,5 +86,3 @@ Feature: W0093
86
86
  | W0093 | 8 | 23 |
87
87
  | W0629 | 1 | 13 |
88
88
  | W0628 | 1 | 13 |
89
-
90
- # vim:ts=2:sw=2:sts=2:et:
@@ -114,5 +114,3 @@ Feature: W0104
114
114
  | W0723 | 3 | 14 |
115
115
  | W0629 | 1 | 12 |
116
116
  | W0628 | 1 | 12 |
117
-
118
- # vim:ts=2:sw=2:sts=2:et:
@@ -46,5 +46,3 @@ Feature: W0109
46
46
  | mesg | line | column |
47
47
  | W0109 | 3 | 15 |
48
48
  | W0118 | 6 | 12 |
49
-
50
- # vim:ts=2:sw=2:sts=2:et:
@@ -147,5 +147,3 @@ Feature: W0119
147
147
  | W1049 | 3 | 12 |
148
148
  | W0104 | 1 | 22 |
149
149
  | W0628 | 1 | 13 |
150
-
151
- # vim:ts=2:sw=2:sts=2:et:
@@ -133,5 +133,3 @@ Feature: W0120
133
133
  | W0117 | 1 | 15 |
134
134
  | W0104 | 1 | 24 |
135
135
  | W0628 | 1 | 15 |
136
-
137
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0121
143
143
  | W0117 | 1 | 7 |
144
144
  | W0104 | 1 | 16 |
145
145
  | W0628 | 1 | 7 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -138,5 +138,3 @@ Feature: W0122
138
138
  | W0117 | 1 | 16 |
139
139
  | W0104 | 1 | 25 |
140
140
  | W0628 | 1 | 16 |
141
-
142
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0123
143
143
  | W0117 | 1 | 5 |
144
144
  | W0104 | 1 | 14 |
145
145
  | W0628 | 1 | 5 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -138,5 +138,3 @@ Feature: W0124
138
138
  | W0117 | 1 | 14 |
139
139
  | W0104 | 1 | 23 |
140
140
  | W0628 | 1 | 14 |
141
-
142
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0125
143
143
  | W0117 | 1 | 6 |
144
144
  | W0104 | 1 | 15 |
145
145
  | W0628 | 1 | 6 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -138,5 +138,3 @@ Feature: W0126
138
138
  | W0117 | 1 | 15 |
139
139
  | W0104 | 1 | 24 |
140
140
  | W0628 | 1 | 15 |
141
-
142
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0127
143
143
  | W0117 | 1 | 7 |
144
144
  | W0104 | 1 | 16 |
145
145
  | W0628 | 1 | 7 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0128
143
143
  | W0117 | 1 | 8 |
144
144
  | W0104 | 1 | 17 |
145
145
  | W0628 | 1 | 8 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0129
143
143
  | W0117 | 1 | 13 |
144
144
  | W0104 | 1 | 22 |
145
145
  | W0628 | 1 | 13 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -155,5 +155,3 @@ Feature: W0130
155
155
  | W0834 | 1 | 1 |
156
156
  | W0834 | 3 | 13 |
157
157
  | W0628 | 1 | 11 |
158
-
159
- # vim:ts=2:sw=2:sts=2:et:
@@ -150,5 +150,3 @@ Feature: W0131
150
150
  | W0834 | 1 | 1 |
151
151
  | W0834 | 3 | 13 |
152
152
  | W0628 | 1 | 20 |
153
-
154
- # vim:ts=2:sw=2:sts=2:et:
@@ -133,5 +133,3 @@ Feature: W0132
133
133
  | W0117 | 1 | 6 |
134
134
  | W0104 | 1 | 24 |
135
135
  | W0628 | 1 | 6 |
136
-
137
- # vim:ts=2:sw=2:sts=2:et:
@@ -147,5 +147,3 @@ Feature: W0133
147
147
  | W0608 | 3 | 12 |
148
148
  | W0104 | 1 | 22 |
149
149
  | W0628 | 1 | 6 |
150
-
151
- # vim:ts=2:sw=2:sts=2:et:
@@ -147,5 +147,3 @@ Feature: W0134
147
147
  | W0608 | 3 | 12 |
148
148
  | W0104 | 1 | 16 |
149
149
  | W0628 | 1 | 6 |
150
-
151
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0135
143
143
  | W0117 | 1 | 6 |
144
144
  | W0104 | 1 | 25 |
145
145
  | W0628 | 1 | 6 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -147,5 +147,3 @@ Feature: W0136
147
147
  | W0608 | 3 | 12 |
148
148
  | W0104 | 1 | 14 |
149
149
  | W0628 | 1 | 6 |
150
-
151
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0137
143
143
  | W0117 | 1 | 6 |
144
144
  | W0104 | 1 | 23 |
145
145
  | W0628 | 1 | 6 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -147,5 +147,3 @@ Feature: W0138
147
147
  | W0608 | 3 | 12 |
148
148
  | W0104 | 1 | 15 |
149
149
  | W0628 | 1 | 6 |
150
-
151
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0139
143
143
  | W0117 | 1 | 6 |
144
144
  | W0104 | 1 | 24 |
145
145
  | W0628 | 1 | 6 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -155,5 +155,3 @@ Feature: W0140
155
155
  | W0104 | 1 | 20 |
156
156
  | W0834 | 1 | 10 |
157
157
  | W0628 | 1 | 6 |
158
-
159
- # vim:ts=2:sw=2:sts=2:et:
@@ -151,5 +151,3 @@ Feature: W0141
151
151
  | W0104 | 1 | 29 |
152
152
  | W0834 | 1 | 10 |
153
153
  | W0628 | 1 | 6 |
154
-
155
- # vim:ts=2:sw=2:sts=2:et:
@@ -148,5 +148,3 @@ Feature: W0142
148
148
  | W1049 | 3 | 12 |
149
149
  | W0104 | 1 | 31 |
150
150
  | W0628 | 1 | 13 |
151
-
152
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0143
143
143
  | W1049 | 3 | 12 |
144
144
  | W0104 | 1 | 32 |
145
145
  | W0628 | 1 | 13 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -142,5 +142,3 @@ Feature: W0144
142
142
  | W1049 | 3 | 12 |
143
143
  | W0104 | 1 | 26 |
144
144
  | W0628 | 1 | 7 |
145
-
146
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0145
143
143
  | W1049 | 3 | 12 |
144
144
  | W0104 | 1 | 30 |
145
145
  | W0628 | 1 | 13 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -142,5 +142,3 @@ Feature: W0146
142
142
  | W1049 | 3 | 12 |
143
143
  | W0104 | 1 | 24 |
144
144
  | W0628 | 1 | 7 |
145
-
146
- # vim:ts=2:sw=2:sts=2:et:
@@ -142,5 +142,3 @@ Feature: W0147
142
142
  | W1049 | 3 | 12 |
143
143
  | W0104 | 1 | 22 |
144
144
  | W0628 | 1 | 5 |
145
-
146
- # vim:ts=2:sw=2:sts=2:et:
@@ -143,5 +143,3 @@ Feature: W0148
143
143
  | W1049 | 3 | 12 |
144
144
  | W0104 | 1 | 31 |
145
145
  | W0628 | 1 | 13 |
146
-
147
- # vim:ts=2:sw=2:sts=2:et:
@@ -142,5 +142,3 @@ Feature: W0149
142
142
  | W1049 | 3 | 12 |
143
143
  | W0104 | 1 | 25 |
144
144
  | W0628 | 1 | 7 |
145
-
146
- # vim:ts=2:sw=2:sts=2:et:
@@ -142,5 +142,3 @@ Feature: W0150
142
142
  | W1049 | 3 | 12 |
143
143
  | W0104 | 1 | 23 |
144
144
  | W0628 | 1 | 5 |
145
-
146
- # vim:ts=2:sw=2:sts=2:et:
@@ -142,5 +142,3 @@ Feature: W0151
142
142
  | W1049 | 3 | 12 |
143
143
  | W0104 | 1 | 24 |
144
144
  | W0628 | 1 | 6 |
145
-
146
- # vim:ts=2:sw=2:sts=2:et:
@@ -151,5 +151,3 @@ Feature: W0152
151
151
  | W0104 | 1 | 36 |
152
152
  | W0834 | 1 | 17 |
153
153
  | W0628 | 1 | 13 |
154
-
155
- # vim:ts=2:sw=2:sts=2:et: