adlint 1.0.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. data/AUTHORS +3 -2
  2. data/ChangeLog +208 -63
  3. data/MANIFEST +4 -0
  4. data/NEWS +24 -5
  5. data/etc/conf.d/fallback/traits.erb +1 -1
  6. data/etc/conf.d/i686-cygwin/traits-gcc_4.3.4.erb +1 -1
  7. data/etc/conf.d/i686-devkit/traits-gcc_4.5.2.erb +1 -1
  8. data/etc/conf.d/i686-linux/traits-gcc_4.5.1.erb +1 -1
  9. data/etc/conf.d/i686-mingw/traits-gcc_4.6.1.erb +1 -1
  10. data/etc/mesg.d/en_US/messages.yml +3 -3
  11. data/etc/mesg.d/ja_JP/messages.yml +4 -4
  12. data/lib/adlint/c/builtin.rb +3 -3
  13. data/lib/adlint/c/ctrlexpr.rb +7 -11
  14. data/lib/adlint/c/expr.rb +548 -363
  15. data/lib/adlint/c/interp.rb +233 -525
  16. data/lib/adlint/c/mediator.rb +1 -0
  17. data/lib/adlint/c/message.rb +144 -1
  18. data/lib/adlint/c/object.rb +15 -6
  19. data/lib/adlint/c/parser.rb +170 -128
  20. data/lib/adlint/c/parser.y +36 -0
  21. data/lib/adlint/c/phase.rb +4 -0
  22. data/lib/adlint/c/seqp.rb +72 -0
  23. data/lib/adlint/c/syntax.rb +254 -3
  24. data/lib/adlint/c.rb +1 -0
  25. data/lib/adlint/cpp/code.rb +2 -2
  26. data/lib/adlint/cpp/eval.rb +29 -13
  27. data/lib/adlint/cpp/message.rb +71 -70
  28. data/lib/adlint/cpp/message_shima.rb +100 -0
  29. data/lib/adlint/cpp/phase.rb +4 -0
  30. data/lib/adlint/cpp/syntax.rb +5 -1
  31. data/lib/adlint/cpp.rb +1 -0
  32. data/lib/adlint/message.rb +6 -3
  33. data/lib/adlint/traits.rb +1 -1
  34. data/lib/adlint/version.rb +5 -5
  35. data/share/demo/Makefile +3 -1
  36. data/share/demo/bad_line/bad_line.c +27 -0
  37. data/share/demo/sequence_point/sequence_point.c +31 -0
  38. data/share/doc/adlint_on_vim_en.png +0 -0
  39. data/share/doc/adlint_on_vim_ja.png +0 -0
  40. data/share/doc/developers_guide_ja.html +3 -3
  41. data/share/doc/developers_guide_ja.texi +1 -1
  42. data/share/doc/users_guide_en.html +3118 -41
  43. data/share/doc/users_guide_en.texi +3090 -37
  44. data/share/doc/users_guide_ja.html +3120 -47
  45. data/share/doc/users_guide_ja.texi +3106 -65
  46. data/share/sample/ctags-5.8/adlint/GNUmakefile +13 -1
  47. data/share/sample/ctags-5.8/adlint/adlint_cinit.h +14 -2
  48. data/share/sample/ctags-5.8/adlint/adlint_pinit.h +14 -4
  49. data/share/sample/ctags-5.8/adlint/adlint_traits.yml +14 -1
  50. data/share/sample/flex-2.5.35/adlint/GNUmakefile +13 -1
  51. data/share/sample/flex-2.5.35/adlint/adlint_cinit.h +14 -2
  52. data/share/sample/flex-2.5.35/adlint/adlint_pinit.h +14 -4
  53. data/share/sample/flex-2.5.35/adlint/adlint_traits.yml +14 -1
  54. metadata +6 -2
@@ -4,7 +4,19 @@
4
4
  # / __ |/ /_/ / /___/ / /| / / /
5
5
  # /_/ |_|_____/_____/_/_/ |_/ /_/ Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
6
6
  #
7
- # GNUmakefile generated by adlintize 0.6.5 at 2012-02-20 11:27:29 +0900.
7
+ # This file is part of AdLint.
8
+ #
9
+ # AdLint is free software: you can redistribute it and/or modify it under the
10
+ # terms of the GNU General Public License as published by the Free Software
11
+ # Foundation, either version 3 of the License, or (at your option) any later
12
+ # version.
13
+ #
14
+ # AdLint is distributed in the hope that it will be useful, but WITHOUT ANY
15
+ # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
16
+ # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
17
+ #
18
+ # You should have received a copy of the GNU General Public License along with
19
+ # AdLint. If not, see <http://www.gnu.org/licenses/>.
8
20
  #
9
21
  # How...
10
22
  # - to validate configuration files
@@ -4,8 +4,20 @@
4
4
  * / __ |/ /_/ / /___/ / /| / / /
5
5
  * /_/ |_|_____/_____/_/_/ |_/ /_/ Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
6
6
  *
7
- * Initial header for GCC 4.5.1 on Linux generated by adlintize 0.6.5
8
- * at 2012-02-20 11:27:29 +0900.
7
+ * This file is part of AdLint.
8
+ *
9
+ * AdLint is free software: you can redistribute it and/or modify it under the
10
+ * terms of the GNU General Public License as published by the Free Software
11
+ * Foundation, either version 3 of the License, or (at your option) any later
12
+ * version.
13
+ *
14
+ * AdLint is distributed in the hope that it will be useful, but WITHOUT ANY
15
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
17
+ * details.
18
+ *
19
+ * You should have received a copy of the GNU General Public License along with
20
+ * AdLint. If not, see <http://www.gnu.org/licenses/>.
9
21
  */
10
22
 
11
23
  #define __DBL_MIN_EXP__ (-1021)
@@ -4,10 +4,20 @@
4
4
  * / __ |/ /_/ / /___/ / /| / / /
5
5
  * /_/ |_|_____/_____/_/_/ |_/ /_/ Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
6
6
  *
7
- * Project specific initial header file generated by adlintize 0.6.5
8
- * at 2012-02-20 11:27:29 +0900.
7
+ * This file is part of AdLint.
8
+ *
9
+ * AdLint is free software: you can redistribute it and/or modify it under the
10
+ * terms of the GNU General Public License as published by the Free Software
11
+ * Foundation, either version 3 of the License, or (at your option) any later
12
+ * version.
13
+ *
14
+ * AdLint is distributed in the hope that it will be useful, but WITHOUT ANY
15
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
17
+ * details.
18
+ *
19
+ * You should have received a copy of the GNU General Public License along with
20
+ * AdLint. If not, see <http://www.gnu.org/licenses/>.
9
21
  */
10
22
 
11
- /* Put project specific predefined macros and types here. */
12
-
13
23
  #define HAVE_CONFIG_H
@@ -4,7 +4,20 @@
4
4
  # / __ |/ /_/ / /___/ / /| / / /
5
5
  # /_/ |_|_____/_____/_/_/ |_/ /_/ Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
6
6
  #
7
- # Traits file generated by adlintize 0.6.5 at 2012-02-20 11:27:29 +0900.
7
+ # This file is part of AdLint.
8
+ #
9
+ # AdLint is free software: you can redistribute it and/or modify it under the
10
+ # terms of the GNU General Public License as published by the Free Software
11
+ # Foundation, either version 3 of the License, or (at your option) any later
12
+ # version.
13
+ #
14
+ # AdLint is distributed in the hope that it will be useful, but WITHOUT ANY
15
+ # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
16
+ # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
17
+ #
18
+ # You should have received a copy of the GNU General Public License along with
19
+ # AdLint. If not, see <http://www.gnu.org/licenses/>.
20
+ #
8
21
 
9
22
  # Schema version of the traits file.
10
23
  # DO NOT EDIT MANUALLY!
@@ -4,7 +4,19 @@
4
4
  # / __ |/ /_/ / /___/ / /| / / /
5
5
  # /_/ |_|_____/_____/_/_/ |_/ /_/ Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
6
6
  #
7
- # GNUmakefile generated by adlintize 0.6.5 at 2012-02-20 10:24:44 +0900.
7
+ # This file is part of AdLint.
8
+ #
9
+ # AdLint is free software: you can redistribute it and/or modify it under the
10
+ # terms of the GNU General Public License as published by the Free Software
11
+ # Foundation, either version 3 of the License, or (at your option) any later
12
+ # version.
13
+ #
14
+ # AdLint is distributed in the hope that it will be useful, but WITHOUT ANY
15
+ # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
16
+ # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
17
+ #
18
+ # You should have received a copy of the GNU General Public License along with
19
+ # AdLint. If not, see <http://www.gnu.org/licenses/>.
8
20
  #
9
21
  # How...
10
22
  # - to validate configuration files
@@ -4,8 +4,20 @@
4
4
  * / __ |/ /_/ / /___/ / /| / / /
5
5
  * /_/ |_|_____/_____/_/_/ |_/ /_/ Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
6
6
  *
7
- * Initial header for GCC 4.5.1 on Linux generated by adlintize 0.6.5
8
- * at 2012-02-20 10:24:44 +0900.
7
+ * This file is part of AdLint.
8
+ *
9
+ * AdLint is free software: you can redistribute it and/or modify it under the
10
+ * terms of the GNU General Public License as published by the Free Software
11
+ * Foundation, either version 3 of the License, or (at your option) any later
12
+ * version.
13
+ *
14
+ * AdLint is distributed in the hope that it will be useful, but WITHOUT ANY
15
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
17
+ * details.
18
+ *
19
+ * You should have received a copy of the GNU General Public License along with
20
+ * AdLint. If not, see <http://www.gnu.org/licenses/>.
9
21
  */
10
22
 
11
23
  #define __DBL_MIN_EXP__ (-1021)
@@ -4,11 +4,21 @@
4
4
  * / __ |/ /_/ / /___/ / /| / / /
5
5
  * /_/ |_|_____/_____/_/_/ |_/ /_/ Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
6
6
  *
7
- * Project specific initial header file generated by adlintize 0.6.5
8
- * at 2012-02-20 10:24:44 +0900.
7
+ * This file is part of AdLint.
8
+ *
9
+ * AdLint is free software: you can redistribute it and/or modify it under the
10
+ * terms of the GNU General Public License as published by the Free Software
11
+ * Foundation, either version 3 of the License, or (at your option) any later
12
+ * version.
13
+ *
14
+ * AdLint is distributed in the hope that it will be useful, but WITHOUT ANY
15
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16
+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
17
+ * details.
18
+ *
19
+ * You should have received a copy of the GNU General Public License along with
20
+ * AdLint. If not, see <http://www.gnu.org/licenses/>.
9
21
  */
10
22
 
11
- /* Put project specific predefined macros and types here. */
12
-
13
23
  #define HAVE_CONFIG_H
14
24
  #define LOCALEDIR "/usr/local/share/locale"
@@ -4,7 +4,20 @@
4
4
  # / __ |/ /_/ / /___/ / /| / / /
5
5
  # /_/ |_|_____/_____/_/_/ |_/ /_/ Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
6
6
  #
7
- # Traits file generated by adlintize 0.6.5 at 2012-02-20 10:24:44 +0900.
7
+ # This file is part of AdLint.
8
+ #
9
+ # AdLint is free software: you can redistribute it and/or modify it under the
10
+ # terms of the GNU General Public License as published by the Free Software
11
+ # Foundation, either version 3 of the License, or (at your option) any later
12
+ # version.
13
+ #
14
+ # AdLint is distributed in the hope that it will be useful, but WITHOUT ANY
15
+ # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
16
+ # A PARTICULAR PURPOSE. See the GNU General Public License for more details.
17
+ #
18
+ # You should have received a copy of the GNU General Public License along with
19
+ # AdLint. If not, see <http://www.gnu.org/licenses/>.
20
+ #
8
21
 
9
22
  # Schema version of the traits file.
10
23
  # DO NOT EDIT MANUALLY!
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adlint
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-02-28 00:00:00.000000000 Z
12
+ date: 2012-03-21 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: ! 'AdLint is a source code static analyzer.
15
15
 
@@ -86,6 +86,7 @@ files:
86
86
  - lib/adlint/c/resolver.rb
87
87
  - lib/adlint/c/scanner.rb
88
88
  - lib/adlint/c/scope.rb
89
+ - lib/adlint/c/seqp.rb
89
90
  - lib/adlint/c/syntax.rb
90
91
  - lib/adlint/c/type.rb
91
92
  - lib/adlint/c/util.rb
@@ -99,6 +100,7 @@ files:
99
100
  - lib/adlint/cpp/lexer.rb
100
101
  - lib/adlint/cpp/macro.rb
101
102
  - lib/adlint/cpp/message.rb
103
+ - lib/adlint/cpp/message_shima.rb
102
104
  - lib/adlint/cpp/phase.rb
103
105
  - lib/adlint/cpp/scanner.rb
104
106
  - lib/adlint/cpp/source.rb
@@ -142,6 +144,7 @@ files:
142
144
  - share/demo/bad_conv/bad_conv.c
143
145
  - share/demo/bad_indent/bad_indent.c
144
146
  - share/demo/bad_init/bad_init.c
147
+ - share/demo/bad_line/bad_line.c
145
148
  - share/demo/bad_macro/bad_macro.c
146
149
  - share/demo/bitwise_expr/bitwise_expr.c
147
150
  - share/demo/call_by_value/call_by_value.c
@@ -208,6 +211,7 @@ files:
208
211
  - share/demo/overflow/overflow.c
209
212
  - share/demo/press_release/press_release.c
210
213
  - share/demo/retn_lvar_addr/retn_lvar_addr.c
214
+ - share/demo/sequence_point/sequence_point.c
211
215
  - share/demo/shift_expr/shift_expr.c
212
216
  - share/demo/should_be_typedef/should_be_typedef.c
213
217
  - share/demo/static_paths/static_paths.c