adlint 1.0.0

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 (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.