adlint 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (465) hide show
  1. data/AUTHORS +27 -0
  2. data/COPYING +674 -0
  3. data/ChangeLog +820 -0
  4. data/INSTALL +78 -0
  5. data/MANIFEST +464 -0
  6. data/NEWS +38 -0
  7. data/README +74 -0
  8. data/Rakefile +167 -0
  9. data/TODO +29 -0
  10. data/bin/adlint +141 -0
  11. data/bin/adlint_chk +129 -0
  12. data/bin/adlint_cma +122 -0
  13. data/bin/adlint_sma +129 -0
  14. data/bin/adlintize +286 -0
  15. data/etc/conf.d/fallback/cinit.erb +11 -0
  16. data/etc/conf.d/fallback/traits.erb +216 -0
  17. data/etc/conf.d/i686-cygwin/cinit-gcc_4.3.4.erb +149 -0
  18. data/etc/conf.d/i686-cygwin/traits-gcc_4.3.4.erb +227 -0
  19. data/etc/conf.d/i686-devkit/cinit-gcc_4.5.2.erb +224 -0
  20. data/etc/conf.d/i686-devkit/traits-gcc_4.5.2.erb +226 -0
  21. data/etc/conf.d/i686-linux/cinit-gcc_4.5.1.erb +219 -0
  22. data/etc/conf.d/i686-linux/traits-gcc_4.5.1.erb +224 -0
  23. data/etc/conf.d/i686-mingw/cinit-gcc_4.6.1.erb +234 -0
  24. data/etc/conf.d/i686-mingw/traits-gcc_4.6.1.erb +226 -0
  25. data/etc/conf.d/noarch/GNUmakefile.erb +119 -0
  26. data/etc/conf.d/noarch/adlint_all_bat.erb +9 -0
  27. data/etc/conf.d/noarch/adlint_all_sh.erb +10 -0
  28. data/etc/conf.d/noarch/pinit.erb +11 -0
  29. data/etc/mesg.d/en_US/messages.yml +784 -0
  30. data/etc/mesg.d/ja_JP/messages.yml +784 -0
  31. data/lib/adlint/analyzer.rb +294 -0
  32. data/lib/adlint/c/branch.rb +251 -0
  33. data/lib/adlint/c/builtin.rb +92 -0
  34. data/lib/adlint/c/code.rb +490 -0
  35. data/lib/adlint/c/const.rb +465 -0
  36. data/lib/adlint/c/conv.rb +212 -0
  37. data/lib/adlint/c/ctrlexpr.rb +949 -0
  38. data/lib/adlint/c/domain.rb +7499 -0
  39. data/lib/adlint/c/environ.rb +133 -0
  40. data/lib/adlint/c/expr.rb +1725 -0
  41. data/lib/adlint/c/format.rb +3209 -0
  42. data/lib/adlint/c/interp.rb +1740 -0
  43. data/lib/adlint/c/lexer.rb +241 -0
  44. data/lib/adlint/c/mediator.rb +313 -0
  45. data/lib/adlint/c/message.rb +13597 -0
  46. data/lib/adlint/c/metric.rb +765 -0
  47. data/lib/adlint/c/object.rb +1018 -0
  48. data/lib/adlint/c/parser.rb +3800 -0
  49. data/lib/adlint/c/parser.y +2054 -0
  50. data/lib/adlint/c/phase.rb +712 -0
  51. data/lib/adlint/c/resolver.rb +270 -0
  52. data/lib/adlint/c/scanner.rb +248 -0
  53. data/lib/adlint/c/scope.rb +74 -0
  54. data/lib/adlint/c/syntax.rb +4279 -0
  55. data/lib/adlint/c/type.rb +7506 -0
  56. data/lib/adlint/c/util.rb +91 -0
  57. data/lib/adlint/c/value.rb +2310 -0
  58. data/lib/adlint/c.rb +56 -0
  59. data/lib/adlint/code.rb +500 -0
  60. data/lib/adlint/cpp/code.rb +189 -0
  61. data/lib/adlint/cpp/constexpr.rb +721 -0
  62. data/lib/adlint/cpp/constexpr.y +389 -0
  63. data/lib/adlint/cpp/eval.rb +1012 -0
  64. data/lib/adlint/cpp/lexer.rb +860 -0
  65. data/lib/adlint/cpp/macro.rb +637 -0
  66. data/lib/adlint/cpp/message.rb +992 -0
  67. data/lib/adlint/cpp/phase.rb +176 -0
  68. data/lib/adlint/cpp/scanner.rb +93 -0
  69. data/lib/adlint/cpp/source.rb +169 -0
  70. data/lib/adlint/cpp/subst.rb +300 -0
  71. data/lib/adlint/cpp/syntax.rb +1412 -0
  72. data/lib/adlint/cpp/util.rb +97 -0
  73. data/lib/adlint/cpp.rb +43 -0
  74. data/lib/adlint/driver.rb +147 -0
  75. data/lib/adlint/error.rb +179 -0
  76. data/lib/adlint/lang.rb +97 -0
  77. data/lib/adlint/ld/message.rb +259 -0
  78. data/lib/adlint/ld/metric.rb +57 -0
  79. data/lib/adlint/ld/object.rb +542 -0
  80. data/lib/adlint/ld/phase.rb +193 -0
  81. data/lib/adlint/ld/typedef.rb +109 -0
  82. data/lib/adlint/ld/util.rb +88 -0
  83. data/lib/adlint/ld.rb +37 -0
  84. data/lib/adlint/lexer.rb +293 -0
  85. data/lib/adlint/message.rb +368 -0
  86. data/lib/adlint/metric.rb +805 -0
  87. data/lib/adlint/monitor.rb +144 -0
  88. data/lib/adlint/phase.rb +90 -0
  89. data/lib/adlint/prelude.rb +314 -0
  90. data/lib/adlint/report.rb +617 -0
  91. data/lib/adlint/source.rb +155 -0
  92. data/lib/adlint/symbol.rb +127 -0
  93. data/lib/adlint/token.rb +215 -0
  94. data/lib/adlint/traits.rb +643 -0
  95. data/lib/adlint/util.rb +524 -0
  96. data/lib/adlint/version.rb +71 -0
  97. data/lib/adlint.rb +66 -0
  98. data/share/HEADER +45 -0
  99. data/share/demo/Makefile +110 -0
  100. data/share/demo/ambig_operator/ambig_operator.c +289 -0
  101. data/share/demo/arg_points_unset/arg_points_unset.c +37 -0
  102. data/share/demo/array_range/array_range.c +62 -0
  103. data/share/demo/bad_bitfields/bad_bitfields.c +74 -0
  104. data/share/demo/bad_brace/bad_brace.c +19 -0
  105. data/share/demo/bad_charset/abcde$.h +0 -0
  106. data/share/demo/bad_charset/bad_charset.c +22 -0
  107. data/share/demo/bad_comment/bad_comment.c +3 -0
  108. data/share/demo/bad_const/bad_const.c +19 -0
  109. data/share/demo/bad_conv/bad_conv.c +48 -0
  110. data/share/demo/bad_indent/bad_indent.c +50 -0
  111. data/share/demo/bad_init/bad_init.c +49 -0
  112. data/share/demo/bad_macro/bad_macro.c +97 -0
  113. data/share/demo/bitwise_expr/bitwise_expr.c +19 -0
  114. data/share/demo/call_by_value/call_by_value.c +26 -0
  115. data/share/demo/cross_ref/cross_ref.c +21 -0
  116. data/share/demo/dangling_else/dangling_else.c +20 -0
  117. data/share/demo/dead_code/dead_code.c +237 -0
  118. data/share/demo/deep_nest/deep_nest.c +57 -0
  119. data/share/demo/dense_switch/dense_switch.c +62 -0
  120. data/share/demo/direct_recur/direct_recur.c +15 -0
  121. data/share/demo/div_by_zero/div_by_zero.c +35 -0
  122. data/share/demo/dos_source/dos_source.c +7 -0
  123. data/share/demo/funptr_cast/funptr_cast.c +26 -0
  124. data/share/demo/goto_stmt/goto_stmt.c +19 -0
  125. data/share/demo/id_hiding/id_hiding.c +19 -0
  126. data/share/demo/ill_defined/ill_defined.c +13 -0
  127. data/share/demo/implicit_conv/implicit_conv.c +60 -0
  128. data/share/demo/implicit_int/implicit_int.c +14 -0
  129. data/share/demo/incomplete_type/incomplete_type.c +49 -0
  130. data/share/demo/indirect_recur/indirect_recur_1.c +14 -0
  131. data/share/demo/indirect_recur/indirect_recur_1.h +7 -0
  132. data/share/demo/indirect_recur/indirect_recur_2.c +12 -0
  133. data/share/demo/indirect_recur/indirect_recur_2.h +6 -0
  134. data/share/demo/indirect_recur/indirect_recur_3.c +6 -0
  135. data/share/demo/indirect_recur/indirect_recur_3.h +6 -0
  136. data/share/demo/indirect_recur/indirect_recur_4.c +25 -0
  137. data/share/demo/intro_demo/intro_demo.c +76 -0
  138. data/share/demo/intro_demo/intro_demo.h +12 -0
  139. data/share/demo/intro_demo/useless_header.h +5 -0
  140. data/share/demo/invalid_call/invalid_call.c +32 -0
  141. data/share/demo/kandr_fundef/kandr_fundef.c +10 -0
  142. data/share/demo/line_comment/line_comment.c +12 -0
  143. data/share/demo/local_decl/local_decl.c +9 -0
  144. data/share/demo/logical_trick/logical_trick.c +36 -0
  145. data/share/demo/long_sym/long_sym.c +5 -0
  146. data/share/demo/loop_var/loop_var.c +92 -0
  147. data/share/demo/malloc_or_die/malloc_or_die.c +43 -0
  148. data/share/demo/may_be_null/may_be_null.c +52 -0
  149. data/share/demo/may_be_null_arith/may_be_null_arith.c +15 -0
  150. data/share/demo/may_be_unset/may_be_unset.c +34 -0
  151. data/share/demo/mmapped_io/mmapped_io.c +23 -0
  152. data/share/demo/multi_break/multi_break.c +33 -0
  153. data/share/demo/multi_decl/multi_decl_1.c +17 -0
  154. data/share/demo/multi_decl/multi_decl_1.h +6 -0
  155. data/share/demo/multi_decl/multi_decl_2.c +13 -0
  156. data/share/demo/multi_decl/multi_decl_2.h +6 -0
  157. data/share/demo/multi_decl/multi_decl_3.c +22 -0
  158. data/share/demo/multi_def/multi_def_1.c +36 -0
  159. data/share/demo/multi_def/multi_def_1.h +6 -0
  160. data/share/demo/multi_def/multi_def_2.c +22 -0
  161. data/share/demo/multi_def/multi_def_2.h +6 -0
  162. data/share/demo/multi_def/multi_def_3.c +6 -0
  163. data/share/demo/multi_typedef/multi_typedef.c +11 -0
  164. data/share/demo/multi_typedef/multi_typedef_1.h +1 -0
  165. data/share/demo/multi_typedef/multi_typedef_2.h +1 -0
  166. data/share/demo/must_be_false/must_be_false.c +53 -0
  167. data/share/demo/must_be_null/must_be_null.c +13 -0
  168. data/share/demo/must_be_null_arith/must_be_null_arith.c +14 -0
  169. data/share/demo/must_be_true/must_be_true.c +21 -0
  170. data/share/demo/no_eof_nl/no_eof_nl.c +4 -0
  171. data/share/demo/no_void_arg/no_void_arg.c +14 -0
  172. data/share/demo/null_stmt/null_stmt.c +19 -0
  173. data/share/demo/octal_const/octal_const.c +20 -0
  174. data/share/demo/output_by_param/output_by_param.c +17 -0
  175. data/share/demo/overflow/overflow.c +74 -0
  176. data/share/demo/press_release/press_release.c +40 -0
  177. data/share/demo/retn_lvar_addr/retn_lvar_addr.c +47 -0
  178. data/share/demo/shift_expr/shift_expr.c +14 -0
  179. data/share/demo/should_be_typedef/should_be_typedef.c +51 -0
  180. data/share/demo/static_paths/static_paths.c +153 -0
  181. data/share/demo/static_vars/static_vars.c +39 -0
  182. data/share/demo/tag_hiding/tag_hiding.c +18 -0
  183. data/share/demo/tricky_incdec/tricky_incdec.c +12 -0
  184. data/share/demo/undefined_macro/undefined_macro.c +17 -0
  185. data/share/demo/uninit_vars/uninit_vars.c +28 -0
  186. data/share/demo/union_type/union_type.c +23 -0
  187. data/share/demo/unmatch_decl/unmatch_decl_1.c +12 -0
  188. data/share/demo/unmatch_decl/unmatch_decl_1.h +8 -0
  189. data/share/demo/unmatch_decl/unmatch_decl_2.c +10 -0
  190. data/share/demo/unmatch_decl/unmatch_decl_2.h +8 -0
  191. data/share/demo/unmatch_decl/unmatch_decl_3.c +7 -0
  192. data/share/demo/unmatch_paren_macro/unmatch_paren_macro.c +15 -0
  193. data/share/demo/unreachable/unreachable.c +34 -0
  194. data/share/demo/useless_exp_funs/useless_exp_funs_1.c +14 -0
  195. data/share/demo/useless_exp_funs/useless_exp_funs_1.h +1 -0
  196. data/share/demo/useless_exp_funs/useless_exp_funs_2.c +6 -0
  197. data/share/demo/useless_exp_vars/useless_export_1.c +8 -0
  198. data/share/demo/useless_exp_vars/useless_export_1.h +1 -0
  199. data/share/demo/useless_exp_vars/useless_export_2.c +7 -0
  200. data/share/demo/useless_expr/useless_expr.c +17 -0
  201. data/share/demo/useless_funs/useless_funs_1.c +21 -0
  202. data/share/demo/useless_funs/useless_funs_1.h +8 -0
  203. data/share/demo/useless_funs/useless_funs_2.c +6 -0
  204. data/share/demo/useless_header/useless_header.c +9 -0
  205. data/share/demo/useless_header/useless_header_1.h +12 -0
  206. data/share/demo/useless_header/useless_header_2.h +6 -0
  207. data/share/demo/useless_header/useless_header_3.h +9 -0
  208. data/share/demo/useless_header/useless_header_4.h +3 -0
  209. data/share/demo/useless_vars/useless_vars.c +17 -0
  210. data/share/demo/va_funcall/va_funcall.c +25 -0
  211. data/share/demo/various_fundef/various_fundef.c +36 -0
  212. data/share/demo/wchar_wstring/wchar_wstring.c +7 -0
  213. data/share/demo/wrap_around/wrap_around.c +38 -0
  214. data/share/doc/Makefile +16 -0
  215. data/share/doc/adlint_on_adqua.png +0 -0
  216. data/share/doc/adlint_on_eclipse_en.png +0 -0
  217. data/share/doc/adlint_on_eclipse_ja.png +0 -0
  218. data/share/doc/adlint_on_vim_en.png +0 -0
  219. data/share/doc/adlint_on_vim_ja.png +0 -0
  220. data/share/doc/developers_guide_ja.html +171 -0
  221. data/share/doc/developers_guide_ja.texi +87 -0
  222. data/share/doc/gen_mesg_sections.rb +39 -0
  223. data/share/doc/samples/GNUmakefile +162 -0
  224. data/share/doc/samples/adlint_traits.yml +238 -0
  225. data/share/doc/texinfo.css +22 -0
  226. data/share/doc/users_guide_en.html +39975 -0
  227. data/share/doc/users_guide_en.texi +32640 -0
  228. data/share/doc/users_guide_ja.html +40505 -0
  229. data/share/doc/users_guide_ja.texi +33189 -0
  230. data/share/logo/adlint-110.png +0 -0
  231. data/share/logo/adlint-524.png +0 -0
  232. data/share/logo/adlint.svg +4637 -0
  233. data/share/sample/README +6 -0
  234. data/share/sample/bison-2.5/adlint/GNUmakefile +170 -0
  235. data/share/sample/bison-2.5/adlint/adlint_traits.yml +225 -0
  236. data/share/sample/bison-2.5/adlint/lib/GNUmakefile +198 -0
  237. data/share/sample/bison-2.5/adlint/lib/adlint_cinit.h +228 -0
  238. data/share/sample/bison-2.5/adlint/lib/adlint_pinit.h +21 -0
  239. data/share/sample/bison-2.5/adlint/lib/adlint_traits.yml +238 -0
  240. data/share/sample/bison-2.5/adlint/src/GNUmakefile +166 -0
  241. data/share/sample/bison-2.5/adlint/src/adlint_cinit.h +228 -0
  242. data/share/sample/bison-2.5/adlint/src/adlint_pinit.h +21 -0
  243. data/share/sample/bison-2.5/adlint/src/adlint_traits.yml +239 -0
  244. data/share/sample/ctags-5.8/adlint/GNUmakefile +169 -0
  245. data/share/sample/ctags-5.8/adlint/adlint_cinit.h +219 -0
  246. data/share/sample/ctags-5.8/adlint/adlint_pinit.h +13 -0
  247. data/share/sample/ctags-5.8/adlint/adlint_traits.yml +225 -0
  248. data/share/sample/flex-2.5.35/adlint/GNUmakefile +140 -0
  249. data/share/sample/flex-2.5.35/adlint/adlint_cinit.h +219 -0
  250. data/share/sample/flex-2.5.35/adlint/adlint_pinit.h +14 -0
  251. data/share/sample/flex-2.5.35/adlint/adlint_traits.yml +225 -0
  252. data/share/sample/ruby-1.9.3-p0/adlint/GNUmakefile +314 -0
  253. data/share/sample/ruby-1.9.3-p0/adlint/adlint_traits.yml +225 -0
  254. data/share/sample/ruby-1.9.3-p0/adlint/core/GNUmakefile +204 -0
  255. data/share/sample/ruby-1.9.3-p0/adlint/core/adlint_cinit.h +228 -0
  256. data/share/sample/ruby-1.9.3-p0/adlint/core/adlint_pinit.h +28 -0
  257. data/share/sample/ruby-1.9.3-p0/adlint/core/adlint_traits.yml +240 -0
  258. data/share/sample/ruby-1.9.3-p0/adlint/enc/GNUmakefile +163 -0
  259. data/share/sample/ruby-1.9.3-p0/adlint/enc/adlint_cinit.h +228 -0
  260. data/share/sample/ruby-1.9.3-p0/adlint/enc/adlint_pinit.h +24 -0
  261. data/share/sample/ruby-1.9.3-p0/adlint/enc/adlint_traits.yml +240 -0
  262. data/share/sample/ruby-1.9.3-p0/adlint/enc-trans/GNUmakefile +149 -0
  263. data/share/sample/ruby-1.9.3-p0/adlint/enc-trans/adlint_cinit.h +228 -0
  264. data/share/sample/ruby-1.9.3-p0/adlint/enc-trans/adlint_pinit.h +24 -0
  265. data/share/sample/ruby-1.9.3-p0/adlint/enc-trans/adlint_traits.yml +240 -0
  266. data/share/sample/ruby-1.9.3-p0/adlint/ext-bigdecimal/GNUmakefile +131 -0
  267. data/share/sample/ruby-1.9.3-p0/adlint/ext-bigdecimal/adlint_cinit.h +228 -0
  268. data/share/sample/ruby-1.9.3-p0/adlint/ext-bigdecimal/adlint_pinit.h +24 -0
  269. data/share/sample/ruby-1.9.3-p0/adlint/ext-bigdecimal/adlint_traits.yml +241 -0
  270. data/share/sample/ruby-1.9.3-p0/adlint/ext-continuation/GNUmakefile +131 -0
  271. data/share/sample/ruby-1.9.3-p0/adlint/ext-continuation/adlint_cinit.h +228 -0
  272. data/share/sample/ruby-1.9.3-p0/adlint/ext-continuation/adlint_pinit.h +24 -0
  273. data/share/sample/ruby-1.9.3-p0/adlint/ext-continuation/adlint_traits.yml +241 -0
  274. data/share/sample/ruby-1.9.3-p0/adlint/ext-coverage/GNUmakefile +131 -0
  275. data/share/sample/ruby-1.9.3-p0/adlint/ext-coverage/adlint_cinit.h +228 -0
  276. data/share/sample/ruby-1.9.3-p0/adlint/ext-coverage/adlint_pinit.h +24 -0
  277. data/share/sample/ruby-1.9.3-p0/adlint/ext-coverage/adlint_traits.yml +241 -0
  278. data/share/sample/ruby-1.9.3-p0/adlint/ext-curses/GNUmakefile +131 -0
  279. data/share/sample/ruby-1.9.3-p0/adlint/ext-curses/adlint_cinit.h +228 -0
  280. data/share/sample/ruby-1.9.3-p0/adlint/ext-curses/adlint_pinit.h +24 -0
  281. data/share/sample/ruby-1.9.3-p0/adlint/ext-curses/adlint_traits.yml +241 -0
  282. data/share/sample/ruby-1.9.3-p0/adlint/ext-date/GNUmakefile +134 -0
  283. data/share/sample/ruby-1.9.3-p0/adlint/ext-date/adlint_cinit.h +228 -0
  284. data/share/sample/ruby-1.9.3-p0/adlint/ext-date/adlint_pinit.h +24 -0
  285. data/share/sample/ruby-1.9.3-p0/adlint/ext-date/adlint_traits.yml +241 -0
  286. data/share/sample/ruby-1.9.3-p0/adlint/ext-dbm/GNUmakefile +131 -0
  287. data/share/sample/ruby-1.9.3-p0/adlint/ext-dbm/adlint_cinit.h +228 -0
  288. data/share/sample/ruby-1.9.3-p0/adlint/ext-dbm/adlint_pinit.h +24 -0
  289. data/share/sample/ruby-1.9.3-p0/adlint/ext-dbm/adlint_traits.yml +241 -0
  290. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest/GNUmakefile +131 -0
  291. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest/adlint_cinit.h +228 -0
  292. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest/adlint_pinit.h +24 -0
  293. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest/adlint_traits.yml +241 -0
  294. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-bubblebabble/GNUmakefile +131 -0
  295. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-bubblebabble/adlint_cinit.h +228 -0
  296. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-bubblebabble/adlint_pinit.h +24 -0
  297. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-bubblebabble/adlint_traits.yml +242 -0
  298. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-md5/GNUmakefile +132 -0
  299. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-md5/adlint_cinit.h +228 -0
  300. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-md5/adlint_pinit.h +24 -0
  301. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-md5/adlint_traits.yml +242 -0
  302. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-rmd160/GNUmakefile +132 -0
  303. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-rmd160/adlint_cinit.h +228 -0
  304. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-rmd160/adlint_pinit.h +24 -0
  305. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-rmd160/adlint_traits.yml +242 -0
  306. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha1/GNUmakefile +132 -0
  307. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha1/adlint_cinit.h +228 -0
  308. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha1/adlint_pinit.h +24 -0
  309. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha1/adlint_traits.yml +242 -0
  310. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha2/GNUmakefile +132 -0
  311. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha2/adlint_cinit.h +228 -0
  312. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha2/adlint_pinit.h +24 -0
  313. data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha2/adlint_traits.yml +242 -0
  314. data/share/sample/ruby-1.9.3-p0/adlint/ext-dl/GNUmakefile +134 -0
  315. data/share/sample/ruby-1.9.3-p0/adlint/ext-dl/adlint_cinit.h +228 -0
  316. data/share/sample/ruby-1.9.3-p0/adlint/ext-dl/adlint_pinit.h +24 -0
  317. data/share/sample/ruby-1.9.3-p0/adlint/ext-dl/adlint_traits.yml +241 -0
  318. data/share/sample/ruby-1.9.3-p0/adlint/ext-dl-callback/GNUmakefile +140 -0
  319. data/share/sample/ruby-1.9.3-p0/adlint/ext-dl-callback/adlint_cinit.h +228 -0
  320. data/share/sample/ruby-1.9.3-p0/adlint/ext-dl-callback/adlint_pinit.h +24 -0
  321. data/share/sample/ruby-1.9.3-p0/adlint/ext-dl-callback/adlint_traits.yml +242 -0
  322. data/share/sample/ruby-1.9.3-p0/adlint/ext-etc/GNUmakefile +131 -0
  323. data/share/sample/ruby-1.9.3-p0/adlint/ext-etc/adlint_cinit.h +228 -0
  324. data/share/sample/ruby-1.9.3-p0/adlint/ext-etc/adlint_pinit.h +24 -0
  325. data/share/sample/ruby-1.9.3-p0/adlint/ext-etc/adlint_traits.yml +241 -0
  326. data/share/sample/ruby-1.9.3-p0/adlint/ext-fcntl/GNUmakefile +131 -0
  327. data/share/sample/ruby-1.9.3-p0/adlint/ext-fcntl/adlint_cinit.h +228 -0
  328. data/share/sample/ruby-1.9.3-p0/adlint/ext-fcntl/adlint_pinit.h +24 -0
  329. data/share/sample/ruby-1.9.3-p0/adlint/ext-fcntl/adlint_traits.yml +241 -0
  330. data/share/sample/ruby-1.9.3-p0/adlint/ext-fiber/GNUmakefile +131 -0
  331. data/share/sample/ruby-1.9.3-p0/adlint/ext-fiber/adlint_cinit.h +228 -0
  332. data/share/sample/ruby-1.9.3-p0/adlint/ext-fiber/adlint_pinit.h +24 -0
  333. data/share/sample/ruby-1.9.3-p0/adlint/ext-fiber/adlint_traits.yml +241 -0
  334. data/share/sample/ruby-1.9.3-p0/adlint/ext-fiddle/GNUmakefile +134 -0
  335. data/share/sample/ruby-1.9.3-p0/adlint/ext-fiddle/adlint_cinit.h +228 -0
  336. data/share/sample/ruby-1.9.3-p0/adlint/ext-fiddle/adlint_pinit.h +24 -0
  337. data/share/sample/ruby-1.9.3-p0/adlint/ext-fiddle/adlint_traits.yml +242 -0
  338. data/share/sample/ruby-1.9.3-p0/adlint/ext-gdbm/GNUmakefile +131 -0
  339. data/share/sample/ruby-1.9.3-p0/adlint/ext-gdbm/adlint_cinit.h +228 -0
  340. data/share/sample/ruby-1.9.3-p0/adlint/ext-gdbm/adlint_pinit.h +24 -0
  341. data/share/sample/ruby-1.9.3-p0/adlint/ext-gdbm/adlint_traits.yml +241 -0
  342. data/share/sample/ruby-1.9.3-p0/adlint/ext-iconv/GNUmakefile +131 -0
  343. data/share/sample/ruby-1.9.3-p0/adlint/ext-iconv/adlint_cinit.h +228 -0
  344. data/share/sample/ruby-1.9.3-p0/adlint/ext-iconv/adlint_pinit.h +24 -0
  345. data/share/sample/ruby-1.9.3-p0/adlint/ext-iconv/adlint_traits.yml +241 -0
  346. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-console/GNUmakefile +131 -0
  347. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-console/adlint_cinit.h +228 -0
  348. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-console/adlint_pinit.h +24 -0
  349. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-console/adlint_traits.yml +241 -0
  350. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-nonblock/GNUmakefile +131 -0
  351. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-nonblock/adlint_cinit.h +228 -0
  352. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-nonblock/adlint_pinit.h +24 -0
  353. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-nonblock/adlint_traits.yml +241 -0
  354. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-wait/GNUmakefile +131 -0
  355. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-wait/adlint_cinit.h +228 -0
  356. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-wait/adlint_pinit.h +24 -0
  357. data/share/sample/ruby-1.9.3-p0/adlint/ext-io-wait/adlint_traits.yml +241 -0
  358. data/share/sample/ruby-1.9.3-p0/adlint/ext-json-generator/GNUmakefile +131 -0
  359. data/share/sample/ruby-1.9.3-p0/adlint/ext-json-generator/adlint_cinit.h +228 -0
  360. data/share/sample/ruby-1.9.3-p0/adlint/ext-json-generator/adlint_pinit.h +24 -0
  361. data/share/sample/ruby-1.9.3-p0/adlint/ext-json-generator/adlint_traits.yml +241 -0
  362. data/share/sample/ruby-1.9.3-p0/adlint/ext-json-parser/GNUmakefile +131 -0
  363. data/share/sample/ruby-1.9.3-p0/adlint/ext-json-parser/adlint_cinit.h +228 -0
  364. data/share/sample/ruby-1.9.3-p0/adlint/ext-json-parser/adlint_pinit.h +24 -0
  365. data/share/sample/ruby-1.9.3-p0/adlint/ext-json-parser/adlint_traits.yml +241 -0
  366. data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-complex/GNUmakefile +131 -0
  367. data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-complex/adlint_cinit.h +228 -0
  368. data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-complex/adlint_pinit.h +24 -0
  369. data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-complex/adlint_traits.yml +241 -0
  370. data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-rational/GNUmakefile +131 -0
  371. data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-rational/adlint_cinit.h +228 -0
  372. data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-rational/adlint_pinit.h +24 -0
  373. data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-rational/adlint_traits.yml +241 -0
  374. data/share/sample/ruby-1.9.3-p0/adlint/ext-nkf/GNUmakefile +131 -0
  375. data/share/sample/ruby-1.9.3-p0/adlint/ext-nkf/adlint_cinit.h +228 -0
  376. data/share/sample/ruby-1.9.3-p0/adlint/ext-nkf/adlint_pinit.h +24 -0
  377. data/share/sample/ruby-1.9.3-p0/adlint/ext-nkf/adlint_traits.yml +241 -0
  378. data/share/sample/ruby-1.9.3-p0/adlint/ext-openssl/GNUmakefile +162 -0
  379. data/share/sample/ruby-1.9.3-p0/adlint/ext-openssl/adlint_cinit.h +228 -0
  380. data/share/sample/ruby-1.9.3-p0/adlint/ext-openssl/adlint_pinit.h +24 -0
  381. data/share/sample/ruby-1.9.3-p0/adlint/ext-openssl/adlint_traits.yml +241 -0
  382. data/share/sample/ruby-1.9.3-p0/adlint/ext-pathname/GNUmakefile +131 -0
  383. data/share/sample/ruby-1.9.3-p0/adlint/ext-pathname/adlint_cinit.h +228 -0
  384. data/share/sample/ruby-1.9.3-p0/adlint/ext-pathname/adlint_pinit.h +24 -0
  385. data/share/sample/ruby-1.9.3-p0/adlint/ext-pathname/adlint_traits.yml +241 -0
  386. data/share/sample/ruby-1.9.3-p0/adlint/ext-psych/GNUmakefile +135 -0
  387. data/share/sample/ruby-1.9.3-p0/adlint/ext-psych/adlint_cinit.h +228 -0
  388. data/share/sample/ruby-1.9.3-p0/adlint/ext-psych/adlint_pinit.h +24 -0
  389. data/share/sample/ruby-1.9.3-p0/adlint/ext-psych/adlint_traits.yml +241 -0
  390. data/share/sample/ruby-1.9.3-p0/adlint/ext-pty/GNUmakefile +131 -0
  391. data/share/sample/ruby-1.9.3-p0/adlint/ext-pty/adlint_cinit.h +228 -0
  392. data/share/sample/ruby-1.9.3-p0/adlint/ext-pty/adlint_pinit.h +24 -0
  393. data/share/sample/ruby-1.9.3-p0/adlint/ext-pty/adlint_traits.yml +241 -0
  394. data/share/sample/ruby-1.9.3-p0/adlint/ext-racc-cparse/GNUmakefile +131 -0
  395. data/share/sample/ruby-1.9.3-p0/adlint/ext-racc-cparse/adlint_cinit.h +228 -0
  396. data/share/sample/ruby-1.9.3-p0/adlint/ext-racc-cparse/adlint_pinit.h +24 -0
  397. data/share/sample/ruby-1.9.3-p0/adlint/ext-racc-cparse/adlint_traits.yml +241 -0
  398. data/share/sample/ruby-1.9.3-p0/adlint/ext-readline/GNUmakefile +131 -0
  399. data/share/sample/ruby-1.9.3-p0/adlint/ext-readline/adlint_cinit.h +228 -0
  400. data/share/sample/ruby-1.9.3-p0/adlint/ext-readline/adlint_pinit.h +24 -0
  401. data/share/sample/ruby-1.9.3-p0/adlint/ext-readline/adlint_traits.yml +241 -0
  402. data/share/sample/ruby-1.9.3-p0/adlint/ext-ripper/GNUmakefile +131 -0
  403. data/share/sample/ruby-1.9.3-p0/adlint/ext-ripper/adlint_cinit.h +228 -0
  404. data/share/sample/ruby-1.9.3-p0/adlint/ext-ripper/adlint_pinit.h +24 -0
  405. data/share/sample/ruby-1.9.3-p0/adlint/ext-ripper/adlint_traits.yml +241 -0
  406. data/share/sample/ruby-1.9.3-p0/adlint/ext-sdbm/GNUmakefile +132 -0
  407. data/share/sample/ruby-1.9.3-p0/adlint/ext-sdbm/adlint_cinit.h +228 -0
  408. data/share/sample/ruby-1.9.3-p0/adlint/ext-sdbm/adlint_pinit.h +24 -0
  409. data/share/sample/ruby-1.9.3-p0/adlint/ext-sdbm/adlint_traits.yml +241 -0
  410. data/share/sample/ruby-1.9.3-p0/adlint/ext-socket/GNUmakefile +144 -0
  411. data/share/sample/ruby-1.9.3-p0/adlint/ext-socket/adlint_cinit.h +228 -0
  412. data/share/sample/ruby-1.9.3-p0/adlint/ext-socket/adlint_pinit.h +24 -0
  413. data/share/sample/ruby-1.9.3-p0/adlint/ext-socket/adlint_traits.yml +241 -0
  414. data/share/sample/ruby-1.9.3-p0/adlint/ext-stringio/GNUmakefile +131 -0
  415. data/share/sample/ruby-1.9.3-p0/adlint/ext-stringio/adlint_cinit.h +228 -0
  416. data/share/sample/ruby-1.9.3-p0/adlint/ext-stringio/adlint_pinit.h +24 -0
  417. data/share/sample/ruby-1.9.3-p0/adlint/ext-stringio/adlint_traits.yml +241 -0
  418. data/share/sample/ruby-1.9.3-p0/adlint/ext-strscan/GNUmakefile +131 -0
  419. data/share/sample/ruby-1.9.3-p0/adlint/ext-strscan/adlint_cinit.h +228 -0
  420. data/share/sample/ruby-1.9.3-p0/adlint/ext-strscan/adlint_pinit.h +24 -0
  421. data/share/sample/ruby-1.9.3-p0/adlint/ext-strscan/adlint_traits.yml +241 -0
  422. data/share/sample/ruby-1.9.3-p0/adlint/ext-syck/GNUmakefile +140 -0
  423. data/share/sample/ruby-1.9.3-p0/adlint/ext-syck/adlint_cinit.h +228 -0
  424. data/share/sample/ruby-1.9.3-p0/adlint/ext-syck/adlint_pinit.h +24 -0
  425. data/share/sample/ruby-1.9.3-p0/adlint/ext-syck/adlint_traits.yml +241 -0
  426. data/share/sample/ruby-1.9.3-p0/adlint/ext-syslog/GNUmakefile +131 -0
  427. data/share/sample/ruby-1.9.3-p0/adlint/ext-syslog/adlint_cinit.h +228 -0
  428. data/share/sample/ruby-1.9.3-p0/adlint/ext-syslog/adlint_pinit.h +24 -0
  429. data/share/sample/ruby-1.9.3-p0/adlint/ext-syslog/adlint_traits.yml +241 -0
  430. data/share/sample/ruby-1.9.3-p0/adlint/ext-zlib/GNUmakefile +131 -0
  431. data/share/sample/ruby-1.9.3-p0/adlint/ext-zlib/adlint_cinit.h +228 -0
  432. data/share/sample/ruby-1.9.3-p0/adlint/ext-zlib/adlint_pinit.h +24 -0
  433. data/share/sample/ruby-1.9.3-p0/adlint/ext-zlib/adlint_traits.yml +241 -0
  434. data/share/sample/screen-4.0.3/adlint/GNUmakefile +162 -0
  435. data/share/sample/screen-4.0.3/adlint/adlint_cinit.h +228 -0
  436. data/share/sample/screen-4.0.3/adlint/adlint_pinit.h +21 -0
  437. data/share/sample/screen-4.0.3/adlint/adlint_traits.yml +238 -0
  438. data/share/sample/vim-7.3/adlint/vim/GNUmakefile +185 -0
  439. data/share/sample/vim-7.3/adlint/vim/adlint_cinit.h +228 -0
  440. data/share/sample/vim-7.3/adlint/vim/adlint_pinit.h +25 -0
  441. data/share/sample/vim-7.3/adlint/vim/adlint_traits.yml +250 -0
  442. data/share/sample/vim-7.3/adlint/xxd/GNUmakefile +131 -0
  443. data/share/sample/vim-7.3/adlint/xxd/adlint_cinit.h +228 -0
  444. data/share/sample/vim-7.3/adlint/xxd/adlint_pinit.h +24 -0
  445. data/share/sample/vim-7.3/adlint/xxd/adlint_traits.yml +237 -0
  446. data/share/sample/zsh-4.3.15/adlint/GNUmakefile +146 -0
  447. data/share/sample/zsh-4.3.15/adlint/adlint_traits.yml +225 -0
  448. data/share/sample/zsh-4.3.15/adlint/builtins/GNUmakefile +132 -0
  449. data/share/sample/zsh-4.3.15/adlint/builtins/adlint_cinit.h +228 -0
  450. data/share/sample/zsh-4.3.15/adlint/builtins/adlint_pinit.h +24 -0
  451. data/share/sample/zsh-4.3.15/adlint/builtins/adlint_traits.yml +240 -0
  452. data/share/sample/zsh-4.3.15/adlint/core/GNUmakefile +153 -0
  453. data/share/sample/zsh-4.3.15/adlint/core/adlint_cinit.h +228 -0
  454. data/share/sample/zsh-4.3.15/adlint/core/adlint_pinit.h +23 -0
  455. data/share/sample/zsh-4.3.15/adlint/core/adlint_traits.yml +239 -0
  456. data/share/sample/zsh-4.3.15/adlint/modules/GNUmakefile +147 -0
  457. data/share/sample/zsh-4.3.15/adlint/modules/adlint_cinit.h +228 -0
  458. data/share/sample/zsh-4.3.15/adlint/modules/adlint_pinit.h +24 -0
  459. data/share/sample/zsh-4.3.15/adlint/modules/adlint_traits.yml +240 -0
  460. data/share/sample/zsh-4.3.15/adlint/zle/GNUmakefile +144 -0
  461. data/share/sample/zsh-4.3.15/adlint/zle/adlint_cinit.h +228 -0
  462. data/share/sample/zsh-4.3.15/adlint/zle/adlint_pinit.h +24 -0
  463. data/share/sample/zsh-4.3.15/adlint/zle/adlint_traits.yml +239 -0
  464. data/spec/MUST_WRITE_SPECS_WITH_RSPEC +0 -0
  465. metadata +532 -0
data/ChangeLog ADDED
@@ -0,0 +1,820 @@
1
+ 2012-02-28 Yutaka Yanoh <yanoh@users.sourceforge.net>
2
+
3
+ * release.ga : 1.0.0
4
+ - This is the initial GA release!
5
+ - Fix traits file validation to allow only values greater than 0 as
6
+ memory alignment items such as `char_alignment'.
7
+ - Correct to run on Ruby 1.9.3-p125 without warnings.
8
+
9
+ 2012-02-22 Yutaka Yanoh <yanoh@users.sourceforge.net>
10
+
11
+ * release.rc : 0.6.8
12
+ - Fix traits file validation to allow nil as `initial_header'.
13
+ - Fix traits file validation to allow only a numerical value as
14
+ numerical items such as `tab_width'.
15
+ - Fix traits file validation to allow a value which is between 1 and
16
+ 256 as type-size items such as `char_size'.
17
+ - Fix traits file validation to allow only true or false as boolean
18
+ items such as `char_as_unsigned_char'.
19
+ - Refine the message catalog for the locale `ja_JP' and `en_US'.
20
+ - Update the user's guide in Japanese.
21
+ - Update the user's guide in English.
22
+
23
+ 2012-02-21 Yutaka Yanoh <yanoh@users.sourceforge.net>
24
+
25
+ * release.rc : 0.6.7
26
+ - Implement missing `traits file validation' feature.
27
+
28
+ 2012-02-20 Yutaka Yanoh <yanoh@users.sourceforge.net>
29
+
30
+ * release.rc : 0.6.6
31
+ - Revise project_traits:coding_style specification.
32
+ - Update the user's guide in Japanese.
33
+ - Update the user's guide in English.
34
+
35
+ 2012-02-17 Yutaka Yanoh <yanoh@users.sourceforge.net>
36
+
37
+ * release.rc : 0.6.5
38
+ - Update the user's guide in Japanese.
39
+ - Update the user's guide in English.
40
+
41
+ 2012-02-16 Yutaka Yanoh <yanoh@users.sourceforge.net>
42
+
43
+ * release.rc : 0.6.4
44
+ - Revise specification of W0534 detection to warn when the
45
+ controlling variable is not initialized in the for-statement
46
+ including when the initial-statement is empty.
47
+ - Fix freeze problem of scanning string-literal which contains
48
+ unescaped newline character.
49
+ - Fix abend problem of evaluating an indirection-expression as the
50
+ controlling expression of if-statement when the dereferencing
51
+ function pointer points nothing.
52
+ - Fix lack of variable definition records problem when the
53
+ storage-class-specifier is `register' or `auto'.
54
+ - Update the user's guide in Japanese.
55
+
56
+ 2012-02-10 Yutaka Yanoh <yanoh@users.sourceforge.net>
57
+
58
+ * release.rc : 0.6.3
59
+ - Change gem packaging method.
60
+ - Update the user's guide in Japanese.
61
+
62
+ 2012-02-08 Yutaka Yanoh <yanoh@users.sourceforge.net>
63
+
64
+ * release.rc : 0.6.2
65
+ - Fix abend problem of evaluating the indirection-expression which
66
+ makes a function object.
67
+
68
+ 2012-02-07 Yutaka Yanoh <yanoh@users.sourceforge.net>
69
+
70
+ * release.rc : 0.6.1
71
+ - Fix lack of variable cross-ref records problem of the
72
+ member-access-by-pointer-expression whose pointer variable is
73
+ global.
74
+ - Fix lack of variable cross-ref records problem of the
75
+ array-subscript-expression whose value is of the global variable.
76
+ - Fix W0055 detection not to count macro definitions in AdLint
77
+ specific project's and compiler's initial headers.
78
+ - Fix lack of variable cross-ref records problem when the inner
79
+ variable of the global array or composite variable is accessed.
80
+ - Fix unnecessary variable cross-ref records problem when the global
81
+ variable definition whose initializer refers to other global
82
+ variable appears after any function definitions.
83
+ - Fix lack of variable cross-ref records problem when the global
84
+ pointer variable is refered in the reassigning context.
85
+ - Refine the message catalog for the locale `ja_JP'.
86
+ - Refine the user's guide in Japanese.
87
+
88
+ 2012-02-06 Yutaka Yanoh <yanoh@users.sourceforge.net>
89
+
90
+ * release.rc : 0.6.0
91
+ - This is the initial release candidate for 1.0.0 GA release.
92
+ - Fix abend problem of the interpreter in evaluating an arithmetic
93
+ operation with operands whose type has not been resolved.
94
+ - Fix abend problem of the interpreter in evaluating a
95
+ member-access-by-pointer-expression whose pointer points to an
96
+ array object or nothing.
97
+ - Fix incomplete variable name problem of the DEP record in the
98
+ metrics file.
99
+ - Update the user's guide in Japanese.
100
+ - Update the user's guide in English.
101
+
102
+ 2012-02-01 Yutaka Yanoh <yanoh@users.sourceforge.net>
103
+
104
+ * release.beta : 0.5.15
105
+ - Fix degraded W0031 detection.
106
+ - Fix bad value domain of an arbitrary value of the floating type
107
+ family.
108
+ - Update the user's guide in Japanese.
109
+
110
+ 2012-01-30 Yutaka Yanoh <yanoh@users.sourceforge.net>
111
+
112
+ * release.beta : 0.5.14
113
+ - Fix bootstrap error messages not to contain full pathname of the
114
+ command.
115
+ - Fix off-by-one problems in W0055 detection.
116
+ - Fix W0440 detection to warn at the closing brace.
117
+ - Fix bad macro expansion problem of the function-like macro whose
118
+ replacement-list contains consecutive `## #' operators.
119
+ - Fix abend problem of W0031 detection when the initializer of the
120
+ global variable definition refers to other variables.
121
+ - Fix abend problem of W0102 detection when the initializer of the
122
+ global variable definition refers to other variables.
123
+ - Fix abend problem of W0104 detection when the initializer of the
124
+ global variable definition updates value of other variables.
125
+ - Fix abend problem of W0105 detection when the initializer of the
126
+ global variable definition contains indirection-expressions.
127
+ - Fix abend problem of W0580 detection when the initializer of the
128
+ global variable definition contains assignment-expressions.
129
+ - Fix W0457 and W0458 detection to correctly warn about implicitly
130
+ typed function-declarations, parameter-definitions and
131
+ variable-definitions.
132
+ - Update the user's guide in Japanese.
133
+
134
+ 2012-01-26 Yutaka Yanoh <yanoh@users.sourceforge.net>
135
+
136
+ * release.beta : 0.5.13
137
+ - Fix adlintize command to output files with UTF-8 encoding.
138
+ - Clarify the error message when adlint, adlint_sma, adlint_cma and
139
+ adlint_chk commands failed to parse the traits file.
140
+ - Fix W0072, W0574, W0575 and W0576 detection to correctly warn when
141
+ the `file_encoding' is "binary" or omitted.
142
+ - Add usage description of `verbose-cma-only' target to the
143
+ adlintized GNUmakefile.
144
+ - Implement missing `change_list' feature.
145
+
146
+ 2012-01-25 Yutaka Yanoh <yanoh@users.sourceforge.net>
147
+
148
+ * release.beta : 0.5.12
149
+ - Fix abend problem when the `file_encoding' is "binary" or omitted
150
+ and messages are not able to be converted into the default external
151
+ encoding.
152
+ - Change adlintized default `file_encoding' to be omitted (equivalent
153
+ to "binary") from "utf-8".
154
+ - Fix macro replacement algorithm to correctly manage the hide set
155
+ and to support the rescanning.
156
+ - Fix abend problem when the pathname of the target source file
157
+ contains Japanese characters.
158
+ - Update the user's guide in English.
159
+
160
+ 2012-01-20 Yutaka Yanoh <yanoh@users.sourceforge.net>
161
+
162
+ * release.beta : 0.5.11
163
+ - Fix bad lexing problem when an escaped newline appears at the line
164
+ above a preprocessing directive line.
165
+ - Fix gcc profile to emulate the __builtin_va_* functions.
166
+
167
+ 2012-01-19 Yutaka Yanoh <yanoh@users.sourceforge.net>
168
+
169
+ * release.beta : 0.5.10
170
+ - Add i686-mingw-gcc_4.6.1 profile.
171
+ - Fix abend problem of W0108 and W0580 detection when the initializer
172
+ of the global variable definition contains indirection-expressions.
173
+
174
+ 2012-01-17 Yutaka Yanoh <yanoh@users.sourceforge.net>
175
+
176
+ * release.beta : 0.5.9
177
+ - Fix W0061 detection not to include newline characters in the
178
+ ignoring tokens of the message text.
179
+ - Fix bad token substitution problem when the substitutive pattern is
180
+ at end of the translation-unit.
181
+ - Add `verbose-cma-only' target to the adlintized GNUmakefile.
182
+ - Fix W0586 message duplication.
183
+ - Fix duplication of messages about the preprocessing phase.
184
+ - Update the user's guide in Japanese.
185
+ - Update the user's guide in English.
186
+
187
+ 2012-01-16 Yutaka Yanoh <yanoh@users.sourceforge.net>
188
+
189
+ * release.beta : 0.5.8
190
+ - Fix message duplication problem after improving the memory usage on
191
+ 0.5.7 release.
192
+ - Correct to run on Ruby 1.9.3-p0 without warnings.
193
+
194
+ 2012-01-12 Yutaka Yanoh <yanoh@users.sourceforge.net>
195
+
196
+ * release.beta : 0.5.7
197
+ - Improve the memory usage.
198
+ - Fix bad macro expansion problem of the function-like macro when two
199
+ or more function-like macro calls are in the same line and the last
200
+ call ends at the next line.
201
+ - Update the user's guide in Japanese.
202
+
203
+ 2012-01-06 Yutaka Yanoh <yanoh@users.sourceforge.net>
204
+
205
+ * release.beta : 0.5.6
206
+ - Fix W0553 detection to warn about the explicit conversion between
207
+ function pointers of different types.
208
+ - Fix W0578 detection to warn when the `integer conversion rank' of
209
+ the conversion destination type is greater than the one of the
210
+ conversion source type.
211
+ - Improve performance of the C parser.
212
+ - Fix huge memory consumption problem in evaluating the initializer
213
+ of a huge array variable.
214
+ - Fix bad pointer dereference problem that the indirection-expression
215
+ makes an object whose type is incompatible to the type of the
216
+ expression.
217
+ - Fix bad macro expansion problem of the function-like macro whose
218
+ name is used by other identifiers.
219
+ - Update the user's guide in Japanese.
220
+ - Update the user's guide in English.
221
+
222
+ 2011-12-22 Yutaka Yanoh <yanoh@users.sourceforge.net>
223
+
224
+ * release.beta : 0.5.5
225
+ - Fix the interpreter not to perform the implicit conversion when it
226
+ is unnecessary.
227
+ - Fix W0578 detection not to warn when the destination type of the
228
+ conversion is smaller than the source type.
229
+ - Refine the message catalog for the locale `en_US'.
230
+
231
+ 2011-12-20 Yutaka Yanoh <yanoh@users.sourceforge.net>
232
+
233
+ * release.beta : 0.5.4
234
+ - Fix W0036 detection to check the total count of
235
+ pointer-declarators, array-declarators and function-declarators.
236
+ - Fix degraded W0949 detection.
237
+ - Fix preprocessor to end the nested block comment at the first `*/'
238
+ token.
239
+ - Fix W0043 detection not to misunderstand the number of initial
240
+ values when the initializer contains useless braces.
241
+ - Fix W0108 detection to warn when the value of the
242
+ assignment-expression is directly used by the upper logical
243
+ operation.
244
+ - Fix W0446 detection to warn when the value of the
245
+ assignment-expression is directly used by the upper arithmetic or
246
+ assignment operation.
247
+ - Fix W0575 detection to warn when the invalid string literal is
248
+ found in the macro definition.
249
+ - Update the user's guide in Japanese.
250
+ - Add the user's guide in English.
251
+
252
+ 2011-12-16 Yutaka Yanoh <yanoh@users.sourceforge.net>
253
+
254
+ * release.beta : 0.5.3
255
+ - Unify W0093 and W0094 detection into W0093.
256
+ - Unify W0460 and W0463 detection into W0460.
257
+ - Unify W0462 and W0464 detection into W0462.
258
+ - Add `-p' option to `adlint', `adlint_sma' and `adlint_chk' command
259
+ to analyze without overwriting result files when same basenames in
260
+ the target source files.
261
+
262
+ 2011-12-13 Yutaka Yanoh <yanoh@users.sourceforge.net>
263
+
264
+ * release.beta : 0.5.2
265
+ - Improve adlintize command to automatically detect the message
266
+ language.
267
+ - Fix W0796 detection not to warn when the callee function has
268
+ variable arguments.
269
+ - Fix W0479 detection to warn only when the replacement-list seems
270
+ like specifier-qualifier-list which consists of two or more tokens.
271
+ - Correct to run on Ruby 1.9.3-p0 and JRuby 1.6.5 without warnings.
272
+ - Fix W1027, W1028 and W1029 detection to check both definitions and
273
+ declarations of variables.
274
+ - Update the user's guide.
275
+ - Refine the message catalog for the locale `en_US'.
276
+
277
+ 2011-12-09 Yutaka Yanoh <yanoh@users.sourceforge.net>
278
+
279
+ * release.beta : 0.5.0
280
+ - This is the initial beta release for system tests and various
281
+ reviews.
282
+ - Add W0795 detection.
283
+ - Add W0796 detection.
284
+ - Add W0797 detection.
285
+ - Add W0581 detection.
286
+ - Add W0582 detection.
287
+ - Add W0583 detection.
288
+ - Add W0584 detection.
289
+ - Add W0654 detection.
290
+ - Fix W0653 detection not to warn the unsurrounded initializer with
291
+ the variable of the same type.
292
+ - Fix W0744 detection to warn when the constant expression as the
293
+ controlling expression of the while-statement always makes false.
294
+ - Fix W0534, W0585 and W0708 detection not to fail to deduct the
295
+ controlling variable in the for-statement.
296
+ - Add W1029 detection.
297
+ - Add W1027 detection.
298
+ - Add W1028 detection.
299
+ - Add W0798 detection.
300
+ - Fix W0019, W0021, W0067, W0105, W0461, W0462, W0464, W0544, W0553,
301
+ W0565, W0566 and W0567 detection not to mishandle the base type of
302
+ the pointer type which is cv-qualified.
303
+ - Add W0799 detection.
304
+ - Add W0800 detection.
305
+ - Change the default locale of messages to `en_US' from `ja_JP'.
306
+ - Add W0785 detection.
307
+ - Fix W0101 detection not to warn when a pointer to the function
308
+ scope static variable is assigned to the pointer variable defined
309
+ at upper scope.
310
+ - Fix W0102 detection not to warn when a pointer to the function
311
+ scope static variable is assigned to the pointer parameter.
312
+ - Add W0580 detection.
313
+ - Add W1032 detection.
314
+ - Add W1034 detection.
315
+ - Add W0810 detection.
316
+ * release.beta : 0.5.1
317
+ - Fix bad macro expansion problem of the function-like macro whose
318
+ replacement-list contains the token sequence consists of the
319
+ parameter followed by ## operator.
320
+
321
+ 2011-12-06 Yutaka Yanoh <yanoh@users.sourceforge.net>
322
+
323
+ * release.alpha : 0.4.11
324
+ - Fix W0656 detection to warn when the conversion specifier
325
+ character of the conversion specifier is undefined in the ISO C99
326
+ and when the conversion specifier character is valid but the whole
327
+ conversion specifier is illformed.
328
+ - Fix W0673 detection to warn when the conversion specifier
329
+ character of the conversion specifier is undefined in the ISO C99
330
+ and when the conversion specifier character is valid but the whole
331
+ conversion specifier is illformed.
332
+ - Fix W0534 detection to improve the accuracy of the controlling
333
+ variable deduction.
334
+ - Fix W0708 detection to improve the accuracy of the controlling
335
+ variable deduction.
336
+ - Add W0585 detection.
337
+ - Fix W0704 detection not to warn about two or more declarations or
338
+ definitions of the same object.
339
+ - Add W0790 detection.
340
+ - Add W0744 detection.
341
+ - Add W0478 detection.
342
+ - Add W0480 detection.
343
+ - Add W0481 detection.
344
+ - Improve interpretation of iteration-statements to manage the value
345
+ domain of the controlling variable more correctly than 0.4.9
346
+ release by considering the initial value of the controlling
347
+ variable.
348
+ - Add W0622 detection.
349
+ - Add W0623 detection.
350
+ - Fix W0088 detection to warn about only the outmost logical
351
+ expression and to warn at the location of the logical operator.
352
+ - Add W1031 detection.
353
+ - Add W0653 detection.
354
+ - Add W0827 detection.
355
+ - Add W0828 detection.
356
+
357
+ 2011-12-01 Yutaka Yanoh <yanoh@users.sourceforge.net>
358
+
359
+ * release.alpha : 0.4.10
360
+ - Rewrite the incomplete printf/scanf format analysis to comply with
361
+ the ISO C99 standard.
362
+ - Add W0635 detection.
363
+ - Add W0636 detection.
364
+ - Add W0637 detection.
365
+ - Add W0638 detection.
366
+ - Add W0639 detection.
367
+ - Add W0640 detection.
368
+ - Fix W0705 detection not to warn when the constant subscript value
369
+ is in the valid range.
370
+ - Fix incomplete W0016 detection to comply with the ISO C99.
371
+ - Fix incomplete W0017 detection to comply with the ISO C99.
372
+ - Fix incomplete W0018 detection to comply with the ISO C99.
373
+ - Fix incomplete W0656 detection to comply with the ISO C99.
374
+ - Fix incomplete W0657 detection to comply with the ISO C99.
375
+ - Fix incomplete W0658 detection to comply with the ISO C99.
376
+ - Fix incomplete W0659 detection to comply with the ISO C99.
377
+ - Fix incomplete W0660 detection to comply with the ISO C99.
378
+ - Fix incomplete W0661 detection to comply with the ISO C99.
379
+ - Fix incomplete W0662 detection to comply with the ISO C99.
380
+ - Fix incomplete W0663 detection to comply with the ISO C99.
381
+ - Fix incomplete W0664 detection to comply with the ISO C99.
382
+ - Fix incomplete W0665 detection to comply with the ISO C99.
383
+ - Fix incomplete W0666 detection to comply with the ISO C99.
384
+ - Fix incomplete W0667 detection to comply with the ISO C99.
385
+ - Fix incomplete W0668 detection to comply with the ISO C99.
386
+ - Fix incomplete W0669 detection to comply with the ISO C99.
387
+ - Fix incomplete W0670 detection to comply with the ISO C99.
388
+ - Fix incomplete W0671 detection to comply with the ISO C99.
389
+ - Fix incomplete W0672 detection to comply with the ISO C99.
390
+ - Fix incomplete W0673 detection to comply with the ISO C99.
391
+ - Fix incomplete W0674 detection to comply with the ISO C99.
392
+ - Fix incomplete W0675 detection to comply with the ISO C99.
393
+ - Fix incomplete W0676 detection to comply with the ISO C99.
394
+ - Fix incomplete W0677 detection to comply with the ISO C99.
395
+ - Fix incomplete W0678 detection to comply with the ISO C99.
396
+ - Fix incomplete W0679 detection to comply with the ISO C99.
397
+ - Fix incomplete W0680 detection to comply with the ISO C99.
398
+ - Fix incomplete W0681 detection to comply with the ISO C99.
399
+ - Fix incomplete W0682 detection to comply with the ISO C99.
400
+ - Fix incomplete W0683 detection to comply with the ISO C99.
401
+ - Fix incomplete W0684 detection to comply with the ISO C99.
402
+ - Add the message catalog for the locale `en_US'.
403
+
404
+ 2011-11-18 Yutaka Yanoh <yanoh@users.sourceforge.net>
405
+
406
+ * release.alpha : 0.4.9
407
+ - Improve interpretation of iteration-statements to manage the value
408
+ domain of the controlling variable correctly.
409
+ - Fix W0609 detection not to misunderstand that the
410
+ logical-expression in the controlling expression of the
411
+ iteration-statement is always true.
412
+ - Fix W0610 detection not to misunderstand that the
413
+ logical-expression in the controlling expression of the
414
+ iteration-statement is always false.
415
+ - Fix W0611 detection not to misunderstand that the controlling
416
+ expression of the iteration-statement is always true.
417
+ - Fix W0612 detection not to misunderstand that the
418
+ logical-expression with the controlling variable in upper
419
+ iteration-statement is always false.
420
+ - Fix W0613 detection not to misunderstand that the controlling
421
+ expression of the iteration-statement is always false.
422
+ - Fix abend problem of evaluating the function definition whose
423
+ return type is omitted.
424
+ - Fix W0578 detection not to warn the implicit conversion between
425
+ cv-qualified and non-qualified of same base type in
426
+ variable-definitions.
427
+ - Add W0624 detection.
428
+ - Add W0705 detection.
429
+ - Add W0745 detection.
430
+
431
+ 2011-11-16 Yutaka Yanoh <yanoh@users.sourceforge.net>
432
+
433
+ * release.alpha : 0.4.8
434
+ - Fix abend problem of evaluating the conditional-expression whose
435
+ `true expression' is array-subscript-expression makes an array
436
+ object and `false expression' is object-specifier designating an
437
+ array object.
438
+ - Fix W0422 detection to warn the possibly nullable pointer.
439
+ - Add W1051 detection.
440
+ - Fix W0578 detection not to warn the implicit conversion between
441
+ cv-qualified and non-qualified of the same base type.
442
+ - Add W1052 detection.
443
+ - Add W0703 detection.
444
+ - Add W0704 detection.
445
+ - Fix W0100 detection to warn the variable which is defined without
446
+ initializer and assigned only once.
447
+ - Add W0736 detection.
448
+ - Add W0696 detection.
449
+ - Add W0708 detection.
450
+ - Fix W0038 detection not to mishandle the length of the array type.
451
+ - Fix W0950 detection to warn all constants in the multi demension
452
+ array variable definition.
453
+ - Fix degraded W0088 detection.
454
+ - Fix W0459 detection not to warn the array variable initialized
455
+ with the string-literal-specifier.
456
+ - Fix W0423 and W0424 detection to warn the
457
+ prefix-increment/decrement-expression of the nullable pointer.
458
+ - Fix W0578 detection not to warn the implicit conversion of
459
+ floating values.
460
+ - Fix degraded W0777, W0778 and W0779 detection.
461
+ - Fix abend problem of evaluating the function definition which has
462
+ unnamed parameter which type is a user type.
463
+
464
+ 2011-11-14 Yutaka Yanoh <yanoh@users.sourceforge.net>
465
+
466
+ * release.alpha : 0.4.7
467
+ - Add W1050 detection.
468
+ - Fix abend problem of evaluating the else-if statement sequence.
469
+ - Fix abend problem of evaluating the negative sized array variable
470
+ definition.
471
+ - Fix bad value domain narrowing problem after 0.4.5 release.
472
+
473
+ 2011-11-11 Yutaka Yanoh <yanoh@users.sourceforge.net>
474
+
475
+ * release.alpha : 0.4.6
476
+ - Add W0611 detection.
477
+ - Add W0612 detection.
478
+ - Add W0613 detection.
479
+ - Add W0614 detection.
480
+ - Add W1049 detection.
481
+ - Improve the variable value version management to reduce the height
482
+ of the version tree.
483
+
484
+ 2011-11-04 Yutaka Yanoh <yanoh@users.sourceforge.net>
485
+
486
+ * release.alpha : 0.4.5
487
+ - Add W0627 detection.
488
+ - Fix W0629 detection not to misunderstand that all static functions
489
+ are not called.
490
+ - Add W0742 detection.
491
+ - Add W0491 detection.
492
+ - Add W0492 detection.
493
+ - Add W0947 detection.
494
+ - Add W0948 detection.
495
+ - Add W0950 detection.
496
+ - Add W0605 detection.
497
+ - Add W0609 detection.
498
+ - Add W0610 detection.
499
+
500
+ 2011-10-31 Yutaka Yanoh <yanoh@users.sourceforge.net>
501
+
502
+ * release.alpha : 0.4.4
503
+ - Fix abend problem of parsing the function definition whose
504
+ parameter types are omitted.
505
+ - Add `adlint_chk' command and add `check' target to the adlintized
506
+ GNUmakefile for fast configuration files validation.
507
+ - Add W0629 detection.
508
+ - Fix W0441 detection not to warn about wide character constants.
509
+ - Add W0626 detection.
510
+ - Activate `file_encoding' setting in the `project_traits' section
511
+ of the traits file.
512
+
513
+ 2011-10-26 Yutaka Yanoh <yanoh@users.sourceforge.net>
514
+
515
+ * release.alpha : 0.4.3
516
+ - Fix W0077 detection to warn when the constant is a decimal integer.
517
+ - Fix W0081 detection to warn when the operand of the unary-minus
518
+ expression has `unsigned long long' type.
519
+ - Fix W0082 detection to warn when the operand of the unary-minus
520
+ expression has bitfield type.
521
+ - Fix W0114 detection to warn about the condition part of the
522
+ conditional-expression.
523
+ - Fix W0115, W0116, W0568, W0569, W0570 and W0571 detection to warn
524
+ about the bit shifting compound-assignment-expression.
525
+ - Fix bad variable value version management problem after rewriting
526
+ the interpreter on 0.2.0 release.
527
+ - Add `sma-only' and `verbose-sma-only' targets to the adlintized
528
+ GNUmakefile.
529
+ - Improve the interpreter to support the value wrap-around semantics
530
+ of conversions.
531
+ - Fix variable value version management not to mishandle the version
532
+ tree at the join point of execution paths.
533
+ - Fix W0073 detection to warn when the unguarded header is included
534
+ immediately after the inclusion of the guarded header.
535
+ - Fix bad character encoding of console and file output on Windows.
536
+ - Add W0578 detection.
537
+
538
+ 2011-10-19 Yutaka Yanoh <yanoh@users.sourceforge.net>
539
+
540
+ * release.alpha : 0.4.2
541
+ - Fix degraded W0043 detection.
542
+ - Fix W0030, W0423 and W0424 detection to warn about postfix or
543
+ prefix increment expressions and postfix or prefix decrement
544
+ expressions.
545
+ - Fix W0100 detection not to warn about the array of pointers to
546
+ the const object.
547
+ - Fix FN_NEST metric meassurement so that the nest level of the top
548
+ of functions is 0.
549
+ - Fix computation of the total lines of function definitions so that
550
+ the function body is from the line of the function name to the
551
+ line of `}' token which ends the definition.
552
+ - Rewrite buggy FN_PATH (the number of estimated static paths per
553
+ function) computation.
554
+ - Add W0576 detection.
555
+ - Add W0577 detection.
556
+
557
+ 2011-10-13 Yutaka Yanoh <yanoh@users.sourceforge.net>
558
+
559
+ * release.alpha : 0.4.1
560
+ - Add W0567 detection.
561
+ - Add W0568 detection.
562
+ - Add W0569 detection.
563
+ - Add W0570 detection.
564
+ - Fix W0088 detection not to warn about the controlling expression
565
+ of control statements.
566
+ - Add W0571 detection.
567
+ - Add W0572 detection.
568
+ - Add W0574 detection.
569
+ - Add W0575 detection.
570
+
571
+ 2011-10-11 Yutaka Yanoh <yanoh@users.sourceforge.net>
572
+
573
+ * release.alpha : 0.4.0
574
+ - Fix W0035 detection to warn when the type of right-hand-side
575
+ operand in a logical expression is a composite type.
576
+ - Fix degraded W0039 detection.
577
+ - Add `linker_traits' section to the traits file.
578
+ - Improve W0051 detection to consider about case-sensitiveness of
579
+ external symbols.
580
+ - Fix W0043 detection not to warn when the initializer is `{0}'.
581
+ - Fix W0566 detection to warn only when one of operands of the
582
+ cast-expression has type of the function pointer.
583
+
584
+ 2011-10-07 Yutaka Yanoh <yanoh@users.sourceforge.net>
585
+
586
+ * release.alpha : 0.3.4
587
+ - Fix branch condition ensuring mechanism to suppress warnings about
588
+ the implicit condition expressions in switch-statement.
589
+ - Add W0559 detection.
590
+ - Add W0560 detection.
591
+ - Add W0561 detection.
592
+ - Add W0562 detection.
593
+ - Fix W0100 detection not to warn about the array of const type
594
+ whose dimension is greater than 1.
595
+ - Fix W0080 detection not to warn about function local const
596
+ variables.
597
+ - Add W0563 detection.
598
+ - Add W0564 detection.
599
+ - Add W0565 detection.
600
+ - Add W0566 detection.
601
+ - Fix problem in W0553 detection that the explicit conversion of
602
+ functions does not cause warnings.
603
+ - Fix W0117 detection to warn about object definitions, not object
604
+ declarations.
605
+ - Fix W0118 detection to warn about object declarations, not object
606
+ definitions.
607
+ - Trivial correction to run on Ruby 1.9.3-rc1 without warnings.
608
+ - Fix off-by-one problems in W0001, W0037, W0049, W0050 and W0054
609
+ detection.
610
+ - Fix W0549 detection not to warn when the parameter is an operand
611
+ of `#' or `##' operator.
612
+
613
+ 2011-10-04 Yutaka Yanoh <yanoh@users.sourceforge.net>
614
+
615
+ * release.alpha : 0.3.3
616
+ - Fix bad value domain reduction problem after improving the
617
+ interpreter on 0.3.1 release.
618
+ - Add W0542 detection.
619
+ - Add W0543 detection.
620
+ - Add W0544 detection.
621
+ - Add W0546 detection.
622
+ - Add W0549 detection.
623
+ - Fix W0100 detection not to warn when the member variable of the
624
+ composite variable is written.
625
+ - Add W0551 detection.
626
+ - Add W0552 detection.
627
+ - Add W0553 detection.
628
+ - Add W0554 detection.
629
+ - Add W0556 detection.
630
+
631
+ 2011-09-30 Yutaka Yanoh <yanoh@users.sourceforge.net>
632
+
633
+ * release.alpha : 0.3.2
634
+ - Add W0534 detection.
635
+ - Fix bad file path in X0003 error message when `--output-dir'
636
+ option specified.
637
+ - Fix bad value domain narrowing problem after improving the
638
+ interpreter on 0.3.1 release.
639
+ - Add W0538 detection.
640
+ - Add W0540 detection.
641
+ - Fix W0105 detection not to warn about function-pointers.
642
+
643
+ 2011-09-22 Yutaka Yanoh <yanoh@users.sourceforge.net>
644
+
645
+ * release.alpha : 0.3.1
646
+ - Improve the interpreter to support the fall-through semantics of
647
+ switch-statements.
648
+ - Change short version of the `--verbose' option to `-v'.
649
+
650
+ 2011-09-06 Yutaka Yanoh <yanoh@users.sourceforge.net>
651
+
652
+ * release.alpha : 0.3.0
653
+ - Merge 3 traits files into single traits file.
654
+ - Improve `adlint' command to support the list-file.
655
+ - Improve `adlintize' command to generate list-file, unix sh script
656
+ and mswin bat file.
657
+
658
+ 2011-09-01 Yutaka Yanoh <yanoh@users.sourceforge.net>
659
+
660
+ * release.alpha : 0.2.5
661
+ - Add W0489 detection.
662
+ - Add W0490 detection.
663
+ - Add W0496 detection.
664
+ - Add W0497 detection.
665
+ - Add W0532 detection.
666
+ - Fix problem that the inner switch-statement is not evaluated by the
667
+ interpreter when the switch-statement is labeled by `default:' of
668
+ the outer switch-statement.
669
+
670
+ 2011-08-23 Yutaka Yanoh <yanoh@users.sourceforge.net>
671
+
672
+ * release.alpha : 0.2.4
673
+ - Fix W0458 detection to warn when type-specifiers in the parameter
674
+ list are omitted.
675
+ - Add W0495 detection.
676
+ - Add W0498 detection.
677
+ - Add W0499 detection.
678
+ - Add W0500 detection.
679
+ - Add W0501 detection.
680
+ - Add W0502 detection.
681
+ - Add W0508 detection.
682
+ - Fix W0432 detection not to warn the standalone composite-statement.
683
+ - Fix W0105 detection not to be output when the assignment to the
684
+ result of the indirection-expression occured.
685
+ - Fix W0028, W0421 and W0422 detections to warn about null pointer
686
+ dereference in array-subscript-expression with a pointer.
687
+ - Fix W0100 detection not to warn about an array of const objects.
688
+ - Fix W0088 detection to warn the logical-expression has
689
+ right-hand-side without side effect in the initializer.
690
+ - Add W0488 detection.
691
+
692
+ 2011-08-16 Yutaka Yanoh <yanoh@users.sourceforge.net>
693
+
694
+ * release.alpha : 0.2.3
695
+ - Fix abend problem when a bitfield base type is not an `int'.
696
+ - Fix selection condition evaluation to correctly detect that the
697
+ condition must be true or may be true.
698
+ - Fix determination logic of completeness of branches of execution
699
+ paths to correctly trace alteration of variable values.
700
+ - Fix W0105 detection not to warn when the parameter type is a
701
+ pointer to a const object.
702
+ - Add W0461 detection.
703
+ - Add W0462 detection.
704
+ - Add W0463 detection.
705
+ - Add W0464 detection.
706
+
707
+ 2011-08-12 Yutaka Yanoh <yanoh@users.sourceforge.net>
708
+
709
+ * release.alpha : 0.2.2
710
+ - Correct to run on Ruby 1.9.3-preview1 without warnings.
711
+ - Change the version validation policy of input files.
712
+ - Fix the interpreter not to misunderstand that the variable defined
713
+ with an initializer which results to an undefined-value is
714
+ undefined.
715
+ - Fix W0028, W0421 and W0422 detections to warn about null pointer
716
+ dereference in member-access-by-pointer-expressions.
717
+ - Fix W0459 detection to suppress message with undefined temporary
718
+ variables.
719
+ - Fix problem when the recursive object-like macro appears in the
720
+ argument of the function-like macro.
721
+ - Fix type resolution problem of the bit-field type.
722
+ - Improve the value-domain management to support value-domain
723
+ narrowing to enter the `else' branch.
724
+ - Fix problem that the indirection-expression results invalid object
725
+ when the expression designates other than the array object.
726
+ - Fix abend problem of the builtin `__adlint__eval' function call.
727
+ - Fix huge memory consumption problem in instantiation of huge
728
+ variable length array type.
729
+
730
+ 2011-07-29 Yutaka Yanoh <yanoh@users.sourceforge.net>
731
+
732
+ * release.alpha : 0.2.1
733
+ - Fix huge memory consumption problem in value-domain management.
734
+ - Fix argument substitution bug of function-like macros.
735
+
736
+ 2011-07-26 Yutaka Yanoh <yanoh@users.sourceforge.net>
737
+
738
+ * release.alpha : 0.2.0
739
+ - Add W9001 detection.
740
+ - Fix mistaken dead code problem of empty condition statement in
741
+ for-statement.
742
+ - Fix unnamed implicit function problem in W0109 detection.
743
+ - Fix mistaken token location problem of macro expansion.
744
+ - Fix wchar_t min-max value undefined problem in W0441 detection.
745
+ - Add logging function.
746
+ - Change metric file name `*.met' to `*.met.csv'.
747
+ - Change message file name `*.msg' to `*.msg.csv'.
748
+ - Add the exec_working_directory field in the version record of the
749
+ metric file and the message file.
750
+ - Support #include_next directive of the GNU GCC extension.
751
+ - Rewrite the interpreter to support the value-domain management to
752
+ improve the accuracy of the dead code detection.
753
+ - Fix cyclomatic complexity computation problem of if-else statement.
754
+
755
+ 2011-05-16 Yutaka Yanoh <yanoh@users.sourceforge.net>
756
+
757
+ * release.alpha : 0.1.6
758
+ - Change preprocessed source file name `*.c.i' to `*.i'.
759
+ - Change exit behavior of `adlint', `adlint_sma' and `adlint_cma'
760
+ command.
761
+ - Add W0040 detection.
762
+ - Add W0655 detection.
763
+ - Add W0786 detection.
764
+ - Add W0949 detection.
765
+ - Add W0059 detection.
766
+ - Add W0060 detection.
767
+ - Add W0072 detection.
768
+ - Add W0440 detection.
769
+ - Add W0441 detection.
770
+ - Add W0477 detection.
771
+ - Add W0479 detection.
772
+ - Add W0482 detection.
773
+ - Add W0483 detection.
774
+ - Add W0493 detection.
775
+ - Add W0511 detection.
776
+ - Add W0512 detection.
777
+ - Add W0528 detection.
778
+ - Add W0529 detection.
779
+ - Add W0530 detection.
780
+ - Fix problem of using `-d' option with adlint command.
781
+
782
+ 2011-05-06 Yutaka Yanoh <yanoh@users.sourceforge.net>
783
+
784
+ * release.alpha : 0.1.5
785
+ - Fix problem in FN_CALL computation.
786
+ - Add location of the function-definition in function metric record.
787
+
788
+ 2011-05-02 Yutaka Yanoh <yanoh@users.sourceforge.net>
789
+
790
+ * release.alpha : 0.1.4
791
+ - Revise compiler traits file format.
792
+ - Add W0525 detection.
793
+ - Fix inconsistent function call-graph problem in W0555 detection.
794
+
795
+ 2011-04-27 Yutaka Yanoh <yanoh@users.sourceforge.net>
796
+
797
+ * release.alpha : 0.1.2
798
+ - Fix problems about detection of void-function call in logical
799
+ expressions.
800
+ - Support separated project tree and Makefile generation.
801
+ - Fix problems about generic labeled statement in switch statement.
802
+ - Implement value-narrowing after the error check path termination.
803
+ * release.alpha : 0.1.3
804
+ - Fix bad message catalog entries.
805
+
806
+ 2011-04-18 Yutaka Yanoh <yanoh@users.sourceforge.net>
807
+
808
+ * release.alpha : 0.1.1
809
+ - Improve performance of the preprocessor.
810
+ - Fix problems about implicit conversion detections.
811
+ - Fix problems about nested composite type instantiations.
812
+
813
+ 2011-04-12 Yutaka Yanoh <yanoh@users.sourceforge.net>
814
+
815
+ * release.alpha : 0.1.0
816
+ - This is the initial alpha release for system tests.
817
+ - Implement `single module analysis' and `cross module analysis'.
818
+ - Implement 456 kinds of warning detections.
819
+ - Implement 14 kinds of code structure extractions.
820
+ - Implement 15 kinds of code quality metric measurements.