adlint 1.0.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/AUTHORS +3 -2
- data/ChangeLog +208 -63
- data/MANIFEST +4 -0
- data/NEWS +24 -5
- data/etc/conf.d/fallback/traits.erb +1 -1
- data/etc/conf.d/i686-cygwin/traits-gcc_4.3.4.erb +1 -1
- data/etc/conf.d/i686-devkit/traits-gcc_4.5.2.erb +1 -1
- data/etc/conf.d/i686-linux/traits-gcc_4.5.1.erb +1 -1
- data/etc/conf.d/i686-mingw/traits-gcc_4.6.1.erb +1 -1
- data/etc/mesg.d/en_US/messages.yml +3 -3
- data/etc/mesg.d/ja_JP/messages.yml +4 -4
- data/lib/adlint/c/builtin.rb +3 -3
- data/lib/adlint/c/ctrlexpr.rb +7 -11
- data/lib/adlint/c/expr.rb +548 -363
- data/lib/adlint/c/interp.rb +233 -525
- data/lib/adlint/c/mediator.rb +1 -0
- data/lib/adlint/c/message.rb +144 -1
- data/lib/adlint/c/object.rb +15 -6
- data/lib/adlint/c/parser.rb +170 -128
- data/lib/adlint/c/parser.y +36 -0
- data/lib/adlint/c/phase.rb +4 -0
- data/lib/adlint/c/seqp.rb +72 -0
- data/lib/adlint/c/syntax.rb +254 -3
- data/lib/adlint/c.rb +1 -0
- data/lib/adlint/cpp/code.rb +2 -2
- data/lib/adlint/cpp/eval.rb +29 -13
- data/lib/adlint/cpp/message.rb +71 -70
- data/lib/adlint/cpp/message_shima.rb +100 -0
- data/lib/adlint/cpp/phase.rb +4 -0
- data/lib/adlint/cpp/syntax.rb +5 -1
- data/lib/adlint/cpp.rb +1 -0
- data/lib/adlint/message.rb +6 -3
- data/lib/adlint/traits.rb +1 -1
- data/lib/adlint/version.rb +5 -5
- data/share/demo/Makefile +3 -1
- data/share/demo/bad_line/bad_line.c +27 -0
- data/share/demo/sequence_point/sequence_point.c +31 -0
- data/share/doc/adlint_on_vim_en.png +0 -0
- data/share/doc/adlint_on_vim_ja.png +0 -0
- data/share/doc/developers_guide_ja.html +3 -3
- data/share/doc/developers_guide_ja.texi +1 -1
- data/share/doc/users_guide_en.html +3118 -41
- data/share/doc/users_guide_en.texi +3090 -37
- data/share/doc/users_guide_ja.html +3120 -47
- data/share/doc/users_guide_ja.texi +3106 -65
- data/share/sample/ctags-5.8/adlint/GNUmakefile +13 -1
- data/share/sample/ctags-5.8/adlint/adlint_cinit.h +14 -2
- data/share/sample/ctags-5.8/adlint/adlint_pinit.h +14 -4
- data/share/sample/ctags-5.8/adlint/adlint_traits.yml +14 -1
- data/share/sample/flex-2.5.35/adlint/GNUmakefile +13 -1
- data/share/sample/flex-2.5.35/adlint/adlint_cinit.h +14 -2
- data/share/sample/flex-2.5.35/adlint/adlint_pinit.h +14 -4
- data/share/sample/flex-2.5.35/adlint/adlint_traits.yml +14 -1
- metadata +6 -2
@@ -0,0 +1,27 @@
|
|
1
|
+
#line
|
2
|
+
|
3
|
+
#line 35000 "bad_line.c"
|
4
|
+
|
5
|
+
#line 35 * 100
|
6
|
+
|
7
|
+
#line 35 * 100 "bad_line.c"
|
8
|
+
|
9
|
+
#line 35 L"あいう.c"
|
10
|
+
|
11
|
+
#line __LINE__ __FILE__
|
12
|
+
|
13
|
+
#define THIS_FILE __FILE__
|
14
|
+
#define LINE 35
|
15
|
+
|
16
|
+
#line LINE THIS_FILE
|
17
|
+
|
18
|
+
#undef LINE
|
19
|
+
#define LINE 35000
|
20
|
+
|
21
|
+
#line LINE THIS_FILE
|
22
|
+
|
23
|
+
#line __FILE__ 35
|
24
|
+
|
25
|
+
#line LINE1000
|
26
|
+
|
27
|
+
#pragma
|
@@ -0,0 +1,31 @@
|
|
1
|
+
extern int bar(int *p);
|
2
|
+
extern int baz(const int *p);
|
3
|
+
|
4
|
+
void foo(int a, int b, int *c)
|
5
|
+
{
|
6
|
+
{
|
7
|
+
a = b * a++;
|
8
|
+
a = bar(&a) * a++;
|
9
|
+
b = bar(&a) * (a++ + --a);
|
10
|
+
}
|
11
|
+
|
12
|
+
{
|
13
|
+
b = bar(&a) * a++;
|
14
|
+
b = bar(&a) + baz(&a);
|
15
|
+
b = baz(&a) - baz(&a);
|
16
|
+
}
|
17
|
+
|
18
|
+
{
|
19
|
+
b = (a + 1) + a++;
|
20
|
+
b = c[a] + c[++a];
|
21
|
+
foo(a, a++, c);
|
22
|
+
foo(a++, a, c);
|
23
|
+
a = a + b;
|
24
|
+
c[a] = a++ + b;
|
25
|
+
}
|
26
|
+
|
27
|
+
{
|
28
|
+
b = bar(&a) * a;
|
29
|
+
b = baz(&a) * a;
|
30
|
+
}
|
31
|
+
}
|
Binary file
|
Binary file
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<html lang="ja">
|
2
2
|
<head>
|
3
|
-
<title>AdLint 1.
|
3
|
+
<title>AdLint 1.2.0 開発者ガイド</title>
|
4
4
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
-
<meta name="description" content="AdLint 1.
|
5
|
+
<meta name="description" content="AdLint 1.2.0 開発者ガイド">
|
6
6
|
<meta name="generator" content="makeinfo 4.13">
|
7
7
|
<link title="Top" rel="top" href="#Top">
|
8
8
|
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
|
@@ -44,7 +44,7 @@ td { border: 1px solid black; }
|
|
44
44
|
--></style>
|
45
45
|
</head>
|
46
46
|
<body>
|
47
|
-
<h1 class="settitle">AdLint 1.
|
47
|
+
<h1 class="settitle">AdLint 1.2.0 開発者ガイド</h1>
|
48
48
|
<div class="contents">
|
49
49
|
<h2>Table of Contents</h2>
|
50
50
|
<ul>
|