adlint 1.4.0 → 1.6.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.
- data/ChangeLog +413 -5
- data/MANIFEST +6 -0
- data/NEWS +43 -4
- data/etc/mesg.d/en_US/messages.yml +1 -1
- data/etc/mesg.d/ja_JP/messages.yml +1 -1
- data/lib/adlint/c.rb +1 -0
- data/lib/adlint/c/enum.rb +52 -0
- data/lib/adlint/c/expr.rb +43 -102
- data/lib/adlint/c/interp.rb +1 -1
- data/lib/adlint/c/mediator.rb +1 -0
- data/lib/adlint/c/message.rb +831 -49
- data/lib/adlint/c/message_shima.rb +236 -0
- data/lib/adlint/c/metric.rb +9 -0
- data/lib/adlint/c/object.rb +37 -32
- data/lib/adlint/c/parser.rb +7 -7
- data/lib/adlint/c/parser.y +7 -7
- data/lib/adlint/c/phase.rb +21 -0
- data/lib/adlint/c/syntax.rb +11 -4
- data/lib/adlint/c/type.rb +1 -1
- data/lib/adlint/cpp.rb +1 -0
- data/lib/adlint/cpp/asm.rb +73 -0
- data/lib/adlint/cpp/message.rb +13 -0
- data/lib/adlint/cpp/message_shima.rb +36 -0
- data/lib/adlint/cpp/phase.rb +3 -0
- data/lib/adlint/cpp/source.rb +9 -0
- data/lib/adlint/version.rb +3 -3
- data/share/demo/Makefile +4 -0
- data/share/demo/bad_conv/bad_conv.c +12 -0
- data/share/demo/bad_enum/bad_enum.c +48 -2
- data/share/demo/bad_label/bad_label.c +26 -0
- data/share/demo/bad_macro/bad_macro.c +3 -0
- data/share/demo/implicit_conv/implicit_conv.c +1 -0
- data/share/demo/inline_asm/inline_asm.c +18 -0
- data/share/demo/invalid_call/invalid_call.c +5 -0
- data/share/demo/multi_decl/multi_decl_1.c +30 -0
- data/share/demo/overflow/overflow.c +3 -3
- data/share/demo/redundant_select/redundant_select.c +25 -0
- data/share/demo/reserved_ident/reserved_ident.c +98 -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 +234 -126
- data/share/doc/users_guide_en.texi +207 -98
- data/share/doc/users_guide_ja.html +247 -156
- data/share/doc/users_guide_ja.texi +221 -130
- data/share/sample/vim-7.3/adlint/xxd/adlint_traits.yml +1 -1
- metadata +8 -2
@@ -0,0 +1,18 @@
|
|
1
|
+
void foo(int arg1, int *arg2, int arg3)
|
2
|
+
{
|
3
|
+
asm("movl %ecx, %eax");
|
4
|
+
__asm__("movl %ecx, (%eax)");
|
5
|
+
|
6
|
+
asm {
|
7
|
+
xorl eax, eax
|
8
|
+
}
|
9
|
+
|
10
|
+
__asm__ volatile (
|
11
|
+
"int $0x80"
|
12
|
+
: "=a" (r)
|
13
|
+
"+b" (arg1),
|
14
|
+
"+c" (arg2),
|
15
|
+
"+d" (arg3)
|
16
|
+
: "a" (128)
|
17
|
+
: "memory", "cc");
|
18
|
+
}
|
@@ -2,16 +2,46 @@
|
|
2
2
|
|
3
3
|
int g1;
|
4
4
|
struct Point g2;
|
5
|
+
double g3;
|
5
6
|
|
6
7
|
int foo(void)
|
7
8
|
{
|
9
|
+
extern int g3;
|
10
|
+
extern int func1(void);
|
11
|
+
typedef long g3;
|
12
|
+
|
8
13
|
return 0;
|
9
14
|
}
|
10
15
|
|
16
|
+
enum E1 { A, B, C };
|
17
|
+
|
11
18
|
struct Point *bar(int i)
|
12
19
|
{
|
20
|
+
extern long g3;
|
21
|
+
extern int func1(int);
|
22
|
+
|
23
|
+
enum E2 { A, B, C };
|
24
|
+
typedef int A;
|
25
|
+
|
26
|
+
{
|
27
|
+
extern short g3;
|
28
|
+
extern int g3;
|
29
|
+
extern void func1(int);
|
30
|
+
extern int func1(int);
|
31
|
+
}
|
32
|
+
|
33
|
+
{
|
34
|
+
extern char g3;
|
35
|
+
extern short g3;
|
36
|
+
extern void func1(int, ...);
|
37
|
+
extern void func1(int);
|
38
|
+
}
|
39
|
+
|
13
40
|
static struct Point p;
|
14
41
|
p.x = i;
|
15
42
|
p.y = i * 2;
|
43
|
+
|
16
44
|
return &p;
|
17
45
|
}
|
46
|
+
|
47
|
+
typedef int A;
|
@@ -47,7 +47,7 @@ static void bar(void)
|
|
47
47
|
const int si2 = (int) 1.5e10;
|
48
48
|
|
49
49
|
const int si3 = (int) -1.5e9;
|
50
|
-
const int
|
50
|
+
const int si4 = (int) -1.5e10;
|
51
51
|
|
52
52
|
int *data_ptr = (int *) alloc();
|
53
53
|
int (*func_ptr)(void) = (int (*)(void)) alloc();
|
@@ -75,8 +75,8 @@ static void bar(void)
|
|
75
75
|
const signed char sc5 = 127;
|
76
76
|
const signed char sc6 = 128;
|
77
77
|
|
78
|
-
const int
|
79
|
-
const int
|
78
|
+
const int si5 = 2147483647;
|
79
|
+
const int si6 = 2147483648;
|
80
80
|
}
|
81
81
|
|
82
82
|
extern long baz(void);
|
@@ -0,0 +1,25 @@
|
|
1
|
+
int foo(const int i)
|
2
|
+
{
|
3
|
+
if (i > 5) {
|
4
|
+
switch (i) {
|
5
|
+
case 0:
|
6
|
+
return 1;
|
7
|
+
case 5:
|
8
|
+
return 2;
|
9
|
+
default:
|
10
|
+
return 3;
|
11
|
+
}
|
12
|
+
}
|
13
|
+
|
14
|
+
switch (i) {
|
15
|
+
case 0:
|
16
|
+
return 4;
|
17
|
+
default:
|
18
|
+
switch (i) {
|
19
|
+
case 10:
|
20
|
+
return 5;
|
21
|
+
default:
|
22
|
+
return 6;
|
23
|
+
}
|
24
|
+
}
|
25
|
+
}
|
@@ -0,0 +1,98 @@
|
|
1
|
+
void __fundecl(void);
|
2
|
+
extern void _FUNDECL(void);
|
3
|
+
static void _fundecl(void);
|
4
|
+
|
5
|
+
extern int __vardecl;
|
6
|
+
extern int _VARDECL;
|
7
|
+
static int _vardecl;
|
8
|
+
|
9
|
+
int __vardef = 0;
|
10
|
+
extern int _VARDEF = 0;
|
11
|
+
static int _vardef = 0;
|
12
|
+
|
13
|
+
int __ansi_fundef(const int __param, const int _PARAM, const int _param)
|
14
|
+
{
|
15
|
+
return __param + _PARAM + _param;
|
16
|
+
}
|
17
|
+
|
18
|
+
int _ANSI_FUNDEF(const int __param, const int _PARAM, const int _param)
|
19
|
+
{
|
20
|
+
return __param + _PARAM + _param;
|
21
|
+
}
|
22
|
+
|
23
|
+
static _ansi_fundef(const int __param, const int _PARAM, const int _param)
|
24
|
+
{
|
25
|
+
return __param + _PARAM + _param;
|
26
|
+
}
|
27
|
+
|
28
|
+
int __kandr_fundef(__param, _PARAM, _param)
|
29
|
+
const int __param;
|
30
|
+
const int _PARAM;
|
31
|
+
const int _param;
|
32
|
+
{
|
33
|
+
return __param + _PARAM + _param;
|
34
|
+
}
|
35
|
+
|
36
|
+
int _KANDR_FUNDEF(__param, _PARAM, _param)
|
37
|
+
const int __param;
|
38
|
+
const int _PARAM;
|
39
|
+
const int _param;
|
40
|
+
{
|
41
|
+
return __param + _PARAM + _param;
|
42
|
+
}
|
43
|
+
|
44
|
+
static int _kandr_fundef(__param, _PARAM, _param)
|
45
|
+
const int __param;
|
46
|
+
const int _PARAM;
|
47
|
+
const int _param;
|
48
|
+
{
|
49
|
+
return __param + _PARAM + _param;
|
50
|
+
}
|
51
|
+
|
52
|
+
typedef int __typedef;
|
53
|
+
typedef int _TYPEDEF;
|
54
|
+
typedef int _typedef;
|
55
|
+
|
56
|
+
struct __struct_tag {
|
57
|
+
int i;
|
58
|
+
};
|
59
|
+
struct _STRUCT_TAG {
|
60
|
+
int i;
|
61
|
+
};
|
62
|
+
struct _struct_tag {
|
63
|
+
int i;
|
64
|
+
};
|
65
|
+
|
66
|
+
union __union_tag {
|
67
|
+
int i;
|
68
|
+
};
|
69
|
+
union _UNION_TAG {
|
70
|
+
int i;
|
71
|
+
};
|
72
|
+
union _union_tag {
|
73
|
+
int i;
|
74
|
+
};
|
75
|
+
|
76
|
+
enum __enum_tag { __enum, _ENUM, _enum };
|
77
|
+
enum _ENUM_TAG { __enum, _ENUM, _enum };
|
78
|
+
enum _enum_tag { __enum, _ENUM, _enum };
|
79
|
+
|
80
|
+
typedef struct __struct_tag_ {
|
81
|
+
int i;
|
82
|
+
} __struct_tag_t;
|
83
|
+
typedef struct _STRUCT_TAG_ {
|
84
|
+
int i;
|
85
|
+
} _STRUCT_TAG_t;
|
86
|
+
typedef struct _struct_tag_ {
|
87
|
+
int i;
|
88
|
+
} _struct_tag_t;
|
89
|
+
|
90
|
+
typedef struct {
|
91
|
+
int i;
|
92
|
+
} __unnamed_t;
|
93
|
+
typedef struct {
|
94
|
+
int i;
|
95
|
+
} _UNNAMED_T;
|
96
|
+
typedef struct {
|
97
|
+
int i;
|
98
|
+
} _unnamed_t;
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<html lang="ja">
|
2
2
|
<head>
|
3
|
-
<title>AdLint 1.
|
3
|
+
<title>AdLint 1.6.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.6.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.6.0 開発者ガイド</h1>
|
48
48
|
<div class="contents">
|
49
49
|
<h2>Table of Contents</h2>
|
50
50
|
<ul>
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<html lang="en">
|
2
2
|
<head>
|
3
|
-
<title>AdLint 1.
|
3
|
+
<title>AdLint 1.6.0 User's Guide</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.6.0 User's Guide">
|
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.6.0 User's Guide</h1>
|
48
48
|
<div class="node">
|
49
49
|
<a name="Top"></a>
|
50
50
|
<p><hr>
|
@@ -3390,7 +3390,7 @@ case 1:
|
|
3390
3390
|
case 2:
|
3391
3391
|
value = 2;
|
3392
3392
|
break;
|
3393
|
-
case 3
|
3393
|
+
case 3:
|
3394
3394
|
value = 3;
|
3395
3395
|
break; /* W0003 */
|
3396
3396
|
}
|
@@ -27191,13 +27191,28 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
27191
27191
|
|
27192
27192
|
<h4 class="subsection">6.449.2 Content</h4>
|
27193
27193
|
|
27194
|
-
<p
|
27195
|
-
|
27196
|
-
<p>Under construction.
|
27194
|
+
<p>Under construction.
|
27197
27195
|
|
27198
27196
|
<h4 class="subsection">6.449.3 Sample code</h4>
|
27199
27197
|
|
27200
|
-
<pre class="verbatim"
|
27198
|
+
<pre class="verbatim">void foo(int arg1, int *arg2, int arg3)
|
27199
|
+
{
|
27200
|
+
asm("movl %ecx, %eax"); /* W0541 */
|
27201
|
+
__asm__("movl %ecx, (%eax)"); /* W0541 */
|
27202
|
+
|
27203
|
+
asm { /* W0541 */
|
27204
|
+
xorl eax, eax
|
27205
|
+
}
|
27206
|
+
|
27207
|
+
__asm__ volatile ( /* W0541 */
|
27208
|
+
"int $0x80"
|
27209
|
+
: "=a" (r)
|
27210
|
+
"+b" (arg1),
|
27211
|
+
"+c" (arg2),
|
27212
|
+
"+d" (arg3)
|
27213
|
+
: "a" (128)
|
27214
|
+
: "memory", "cc");
|
27215
|
+
}
|
27201
27216
|
</pre>
|
27202
27217
|
|
27203
27218
|
<h4 class="subsection">6.449.4 Related message</h4>
|
@@ -27206,7 +27221,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
27206
27221
|
|
27207
27222
|
<h4 class="subsection">6.449.5 Since</h4>
|
27208
27223
|
|
27209
|
-
<p>
|
27224
|
+
<p>1.6.0
|
27210
27225
|
|
27211
27226
|
<div class="node">
|
27212
27227
|
<a name="W0542"></a>
|
@@ -28258,9 +28273,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
28258
28273
|
|
28259
28274
|
<h4 class="subsection">6.475.2 Content</h4>
|
28260
28275
|
|
28261
|
-
<p
|
28262
|
-
|
28263
|
-
<p>Under construction.
|
28276
|
+
<p>Under construction.
|
28264
28277
|
|
28265
28278
|
<h4 class="subsection">6.475.3 Sample code</h4>
|
28266
28279
|
|
@@ -28274,7 +28287,7 @@ scanf("%[a-z]", &c); /* W0573 */
|
|
28274
28287
|
|
28275
28288
|
<h4 class="subsection">6.475.5 Since</h4>
|
28276
28289
|
|
28277
|
-
<p>
|
28290
|
+
<p>1.6.0
|
28278
28291
|
|
28279
28292
|
<div class="node">
|
28280
28293
|
<a name="W0574"></a>
|
@@ -28484,9 +28497,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
28484
28497
|
|
28485
28498
|
<h4 class="subsection">6.481.2 Content</h4>
|
28486
28499
|
|
28487
|
-
<p
|
28488
|
-
|
28489
|
-
<p>Under construction.
|
28500
|
+
<p>Under construction.
|
28490
28501
|
|
28491
28502
|
<h4 class="subsection">6.481.3 Sample code</h4>
|
28492
28503
|
|
@@ -28502,7 +28513,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
28502
28513
|
|
28503
28514
|
<h4 class="subsection">6.481.5 Since</h4>
|
28504
28515
|
|
28505
|
-
<p>
|
28516
|
+
<p>1.6.0
|
28506
28517
|
|
28507
28518
|
<div class="node">
|
28508
28519
|
<a name="W0580"></a>
|
@@ -30368,13 +30379,13 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
30368
30379
|
|
30369
30380
|
<p>Under construction.
|
30370
30381
|
|
30382
|
+
<h4 class="subsection">6.524.3 Sample code</h4>
|
30383
|
+
|
30371
30384
|
<pre class="verbatim">register int arr1[3]; /* W0642 */
|
30372
30385
|
int* p = arr1;
|
30373
30386
|
</pre>
|
30374
30387
|
|
30375
|
-
|
30376
|
-
|
30377
|
-
<h4 class="subsection">6.524.3 Related message</h4>
|
30388
|
+
<h4 class="subsection">6.524.4 Related message</h4>
|
30378
30389
|
|
30379
30390
|
<ul>
|
30380
30391
|
<li><a href="#W0643">W0643</a> This string literal constituted by a macro is illegal form unenclosed by `"'. `#'operator may apply to actual argument which has '\' at the end.
|
@@ -30383,7 +30394,7 @@ int* p = arr1;
|
|
30383
30394
|
<li><a href="#W0646">W0646</a> A normal string literal and a wide string literal are contiguous.
|
30384
30395
|
</ul>
|
30385
30396
|
|
30386
|
-
<h4 class="subsection">6.524.
|
30397
|
+
<h4 class="subsection">6.524.5 Since</h4>
|
30387
30398
|
|
30388
30399
|
<p>2.0.0 (planned)
|
30389
30400
|
|
@@ -32840,13 +32851,12 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
32840
32851
|
|
32841
32852
|
<h4 class="subsection">6.563.2 Content</h4>
|
32842
32853
|
|
32843
|
-
<p
|
32844
|
-
|
32845
|
-
<p>Under construction.
|
32854
|
+
<p>Under construction.
|
32846
32855
|
|
32847
32856
|
<h4 class="subsection">6.563.3 Sample code</h4>
|
32848
32857
|
|
32849
|
-
<pre class="verbatim"
|
32858
|
+
<pre class="verbatim">char c;
|
32859
|
+
scanf("%[z-a]", &c); /* W0685 */
|
32850
32860
|
</pre>
|
32851
32861
|
|
32852
32862
|
<h4 class="subsection">6.563.4 Related message</h4>
|
@@ -32887,7 +32897,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
32887
32897
|
|
32888
32898
|
<h4 class="subsection">6.563.5 Since</h4>
|
32889
32899
|
|
32890
|
-
<p>
|
32900
|
+
<p>1.6.0
|
32891
32901
|
|
32892
32902
|
<div class="node">
|
32893
32903
|
<a name="W0686"></a>
|
@@ -32908,13 +32918,12 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
32908
32918
|
|
32909
32919
|
<h4 class="subsection">6.564.2 Content</h4>
|
32910
32920
|
|
32911
|
-
<p
|
32912
|
-
|
32913
|
-
<p>Under construction.
|
32921
|
+
<p>Under construction.
|
32914
32922
|
|
32915
32923
|
<h4 class="subsection">6.564.3 Sample code</h4>
|
32916
32924
|
|
32917
|
-
<pre class="verbatim"
|
32925
|
+
<pre class="verbatim">char c;
|
32926
|
+
scanf("%[abcda]", &c); /* W0686 */
|
32918
32927
|
</pre>
|
32919
32928
|
|
32920
32929
|
<h4 class="subsection">6.564.4 Related message</h4>
|
@@ -32955,7 +32964,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
32955
32964
|
|
32956
32965
|
<h4 class="subsection">6.564.5 Since</h4>
|
32957
32966
|
|
32958
|
-
<p>
|
32967
|
+
<p>1.6.0
|
32959
32968
|
|
32960
32969
|
<div class="node">
|
32961
32970
|
<a name="W0687"></a>
|
@@ -36851,13 +36860,35 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
36851
36860
|
|
36852
36861
|
<h4 class="subsection">6.650.2 Content</h4>
|
36853
36862
|
|
36854
|
-
<p
|
36855
|
-
|
36856
|
-
<p>Under construction.
|
36863
|
+
<p>Under construction.
|
36857
36864
|
|
36858
36865
|
<h4 class="subsection">6.650.3 Sample code</h4>
|
36859
36866
|
|
36860
|
-
<pre class="verbatim"
|
36867
|
+
<pre class="verbatim">int foo(const int i)
|
36868
|
+
{
|
36869
|
+
if (i > 5) {
|
36870
|
+
switch (i) { /* W0781 */
|
36871
|
+
case 0:
|
36872
|
+
return 1;
|
36873
|
+
case 5:
|
36874
|
+
return 2;
|
36875
|
+
default:
|
36876
|
+
return 3;
|
36877
|
+
}
|
36878
|
+
}
|
36879
|
+
|
36880
|
+
switch (i) { /* OK */
|
36881
|
+
case 0:
|
36882
|
+
return 4;
|
36883
|
+
default:
|
36884
|
+
switch (i) { /* W0781 */
|
36885
|
+
case 10:
|
36886
|
+
return 5;
|
36887
|
+
default:
|
36888
|
+
return 6;
|
36889
|
+
}
|
36890
|
+
}
|
36891
|
+
}
|
36861
36892
|
</pre>
|
36862
36893
|
|
36863
36894
|
<h4 class="subsection">6.650.4 Related message</h4>
|
@@ -36866,7 +36897,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
36866
36897
|
|
36867
36898
|
<h4 class="subsection">6.650.5 Since</h4>
|
36868
36899
|
|
36869
|
-
<p>
|
36900
|
+
<p>1.6.0
|
36870
36901
|
|
36871
36902
|
<div class="node">
|
36872
36903
|
<a name="W0783"></a>
|
@@ -37037,13 +37068,21 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37037
37068
|
|
37038
37069
|
<h4 class="subsection">6.655.2 Content</h4>
|
37039
37070
|
|
37040
|
-
<p
|
37041
|
-
|
37042
|
-
<p>Under construction.
|
37071
|
+
<p>Under construction.
|
37043
37072
|
|
37044
37073
|
<h4 class="subsection">6.655.3 Sample code</h4>
|
37045
37074
|
|
37046
|
-
<pre class="verbatim"
|
37075
|
+
<pre class="verbatim">void func1(void)
|
37076
|
+
{
|
37077
|
+
extern int num;
|
37078
|
+
extern void func3(void);
|
37079
|
+
}
|
37080
|
+
|
37081
|
+
void func2(void)
|
37082
|
+
{
|
37083
|
+
extern double num; /* W0787 */
|
37084
|
+
extern void func3(int); /* W0787 */
|
37085
|
+
}
|
37047
37086
|
</pre>
|
37048
37087
|
|
37049
37088
|
<h4 class="subsection">6.655.4 Related message</h4>
|
@@ -37055,7 +37094,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37055
37094
|
|
37056
37095
|
<h4 class="subsection">6.655.5 Since</h4>
|
37057
37096
|
|
37058
|
-
<p>
|
37097
|
+
<p>1.6.0
|
37059
37098
|
|
37060
37099
|
<div class="node">
|
37061
37100
|
<a name="W0788"></a>
|
@@ -37076,13 +37115,17 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37076
37115
|
|
37077
37116
|
<h4 class="subsection">6.656.2 Content</h4>
|
37078
37117
|
|
37079
|
-
<p
|
37080
|
-
|
37081
|
-
<p>Under construction.
|
37118
|
+
<p>Under construction.
|
37082
37119
|
|
37083
37120
|
<h4 class="subsection">6.656.3 Sample code</h4>
|
37084
37121
|
|
37085
|
-
<pre class="verbatim"
|
37122
|
+
<pre class="verbatim">extern int func(void);
|
37123
|
+
|
37124
|
+
void func(void) /* W0788 */
|
37125
|
+
{
|
37126
|
+
typedef int num;
|
37127
|
+
double num; /* W0788 */
|
37128
|
+
}
|
37086
37129
|
</pre>
|
37087
37130
|
|
37088
37131
|
<h4 class="subsection">6.656.4 Related message</h4>
|
@@ -37094,7 +37137,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37094
37137
|
|
37095
37138
|
<h4 class="subsection">6.656.5 Since</h4>
|
37096
37139
|
|
37097
|
-
<p>
|
37140
|
+
<p>1.6.0
|
37098
37141
|
|
37099
37142
|
<div class="node">
|
37100
37143
|
<a name="W0789"></a>
|
@@ -37115,13 +37158,18 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37115
37158
|
|
37116
37159
|
<h4 class="subsection">6.657.2 Content</h4>
|
37117
37160
|
|
37118
|
-
<p
|
37119
|
-
|
37120
|
-
<p>Under construction.
|
37161
|
+
<p>Under construction.
|
37121
37162
|
|
37122
37163
|
<h4 class="subsection">6.657.3 Sample code</h4>
|
37123
37164
|
|
37124
|
-
<pre class="verbatim"
|
37165
|
+
<pre class="verbatim">int num = 0;
|
37166
|
+
extern int func1(void);
|
37167
|
+
|
37168
|
+
void func2(void)
|
37169
|
+
{
|
37170
|
+
extern double num; /* W0789 */
|
37171
|
+
extern void func1(void); /* W0789 */
|
37172
|
+
}
|
37125
37173
|
</pre>
|
37126
37174
|
|
37127
37175
|
<h4 class="subsection">6.657.4 Related message</h4>
|
@@ -37133,7 +37181,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37133
37181
|
|
37134
37182
|
<h4 class="subsection">6.657.5 Since</h4>
|
37135
37183
|
|
37136
|
-
<p>
|
37184
|
+
<p>1.6.0
|
37137
37185
|
|
37138
37186
|
<div class="node">
|
37139
37187
|
<a name="W0790"></a>
|
@@ -37854,13 +37902,11 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37854
37902
|
|
37855
37903
|
<h4 class="subsection">6.675.2 Content</h4>
|
37856
37904
|
|
37857
|
-
<p
|
37858
|
-
|
37859
|
-
<p>Under construction.
|
37905
|
+
<p>Under construction.
|
37860
37906
|
|
37861
37907
|
<h4 class="subsection">6.675.3 Sample code</h4>
|
37862
37908
|
|
37863
|
-
<pre class="verbatim"
|
37909
|
+
<pre class="verbatim">#undef __STDC_VERSION__ /* W0807 */
|
37864
37910
|
</pre>
|
37865
37911
|
|
37866
37912
|
<h4 class="subsection">6.675.4 Related message</h4>
|
@@ -37872,7 +37918,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37872
37918
|
|
37873
37919
|
<h4 class="subsection">6.675.5 Since</h4>
|
37874
37920
|
|
37875
|
-
<p>
|
37921
|
+
<p>1.6.0
|
37876
37922
|
|
37877
37923
|
<div class="node">
|
37878
37924
|
<a name="W0808"></a>
|
@@ -37893,13 +37939,11 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37893
37939
|
|
37894
37940
|
<h4 class="subsection">6.676.2 Content</h4>
|
37895
37941
|
|
37896
|
-
<p
|
37897
|
-
|
37898
|
-
<p>Under construction.
|
37942
|
+
<p>Under construction.
|
37899
37943
|
|
37900
37944
|
<h4 class="subsection">6.676.3 Sample code</h4>
|
37901
37945
|
|
37902
|
-
<pre class="verbatim"
|
37946
|
+
<pre class="verbatim">#define __FILE__ "test.c" /* W0808 */
|
37903
37947
|
</pre>
|
37904
37948
|
|
37905
37949
|
<h4 class="subsection">6.676.4 Related message</h4>
|
@@ -37911,7 +37955,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37911
37955
|
|
37912
37956
|
<h4 class="subsection">6.676.5 Since</h4>
|
37913
37957
|
|
37914
|
-
<p>
|
37958
|
+
<p>1.6.0
|
37915
37959
|
|
37916
37960
|
<div class="node">
|
37917
37961
|
<a name="W0809"></a>
|
@@ -37932,13 +37976,13 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37932
37976
|
|
37933
37977
|
<h4 class="subsection">6.677.2 Content</h4>
|
37934
37978
|
|
37935
|
-
<p
|
37936
|
-
|
37937
|
-
<p>Under construction.
|
37979
|
+
<p>Under construction.
|
37938
37980
|
|
37939
37981
|
<h4 class="subsection">6.677.3 Sample code</h4>
|
37940
37982
|
|
37941
|
-
<pre class="verbatim"
|
37983
|
+
<pre class="verbatim">extern int __value; /* W0809 */
|
37984
|
+
int _VAL = 10; /* W0809 */
|
37985
|
+
static void _func(void); /* W0809 */
|
37942
37986
|
</pre>
|
37943
37987
|
|
37944
37988
|
<h4 class="subsection">6.677.4 Related message</h4>
|
@@ -37947,7 +37991,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
37947
37991
|
|
37948
37992
|
<h4 class="subsection">6.677.5 Since</h4>
|
37949
37993
|
|
37950
|
-
<p>
|
37994
|
+
<p>1.6.0
|
37951
37995
|
|
37952
37996
|
<div class="node">
|
37953
37997
|
<a name="W0810"></a>
|
@@ -38663,13 +38707,26 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
38663
38707
|
|
38664
38708
|
<h4 class="subsection">6.696.2 Content</h4>
|
38665
38709
|
|
38666
|
-
<p
|
38667
|
-
|
38668
|
-
<p>Under construction.
|
38710
|
+
<p>Under construction.
|
38669
38711
|
|
38670
38712
|
<h4 class="subsection">6.696.3 Sample code</h4>
|
38671
38713
|
|
38672
|
-
<pre class="verbatim"
|
38714
|
+
<pre class="verbatim">void func(int a, int b)
|
38715
|
+
{
|
38716
|
+
if (a == 0) {
|
38717
|
+
int c = 0;
|
38718
|
+
RETRY:
|
38719
|
+
b = 10;
|
38720
|
+
}
|
38721
|
+
|
38722
|
+
if (b != 0) {
|
38723
|
+
goto RETRY;
|
38724
|
+
}
|
38725
|
+
RETRY: /* W1030 */
|
38726
|
+
b = 1;
|
38727
|
+
|
38728
|
+
...snip...
|
38729
|
+
}
|
38673
38730
|
</pre>
|
38674
38731
|
|
38675
38732
|
<h4 class="subsection">6.696.4 Related message</h4>
|
@@ -38678,7 +38735,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
38678
38735
|
|
38679
38736
|
<h4 class="subsection">6.696.5 Since</h4>
|
38680
38737
|
|
38681
|
-
<p>
|
38738
|
+
<p>1.6.0
|
38682
38739
|
|
38683
38740
|
<div class="node">
|
38684
38741
|
<a name="W1031"></a>
|
@@ -39546,13 +39603,18 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39546
39603
|
|
39547
39604
|
<h4 class="subsection">6.718.2 Content</h4>
|
39548
39605
|
|
39549
|
-
<p
|
39550
|
-
|
39551
|
-
<p>Under construction.
|
39606
|
+
<p>Under construction.
|
39552
39607
|
|
39553
39608
|
<h4 class="subsection">6.718.3 Sample code</h4>
|
39554
39609
|
|
39555
|
-
<pre class="verbatim"
|
39610
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
39611
|
+
|
39612
|
+
extern void func1(enum Color);
|
39613
|
+
|
39614
|
+
void func2(void)
|
39615
|
+
{
|
39616
|
+
func1(4); /* W1053 */
|
39617
|
+
}
|
39556
39618
|
</pre>
|
39557
39619
|
|
39558
39620
|
<h4 class="subsection">6.718.4 Related message</h4>
|
@@ -39574,7 +39636,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39574
39636
|
|
39575
39637
|
<h4 class="subsection">6.718.5 Since</h4>
|
39576
39638
|
|
39577
|
-
<p>
|
39639
|
+
<p>1.6.0
|
39578
39640
|
|
39579
39641
|
<div class="node">
|
39580
39642
|
<a name="W1054"></a>
|
@@ -39595,13 +39657,18 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39595
39657
|
|
39596
39658
|
<h4 class="subsection">6.719.2 Content</h4>
|
39597
39659
|
|
39598
|
-
<p
|
39599
|
-
|
39600
|
-
<p>Under construction.
|
39660
|
+
<p>Under construction.
|
39601
39661
|
|
39602
39662
|
<h4 class="subsection">6.719.3 Sample code</h4>
|
39603
39663
|
|
39604
|
-
<pre class="verbatim"
|
39664
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
39665
|
+
|
39666
|
+
extern enum Color col;
|
39667
|
+
|
39668
|
+
void func2(void)
|
39669
|
+
{
|
39670
|
+
col = 4; /* W1054 */
|
39671
|
+
}
|
39605
39672
|
</pre>
|
39606
39673
|
|
39607
39674
|
<h4 class="subsection">6.719.4 Related message</h4>
|
@@ -39623,7 +39690,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39623
39690
|
|
39624
39691
|
<h4 class="subsection">6.719.5 Since</h4>
|
39625
39692
|
|
39626
|
-
<p>
|
39693
|
+
<p>1.6.0
|
39627
39694
|
|
39628
39695
|
<div class="node">
|
39629
39696
|
<a name="W1055"></a>
|
@@ -39644,13 +39711,16 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39644
39711
|
|
39645
39712
|
<h4 class="subsection">6.720.2 Content</h4>
|
39646
39713
|
|
39647
|
-
<p
|
39648
|
-
|
39649
|
-
<p>Under construction.
|
39714
|
+
<p>Under construction.
|
39650
39715
|
|
39651
39716
|
<h4 class="subsection">6.720.3 Sample code</h4>
|
39652
39717
|
|
39653
|
-
<pre class="verbatim"
|
39718
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
39719
|
+
|
39720
|
+
enum Color func(void)
|
39721
|
+
{
|
39722
|
+
return 4; /* W1055 */
|
39723
|
+
}
|
39654
39724
|
</pre>
|
39655
39725
|
|
39656
39726
|
<h4 class="subsection">6.720.4 Related message</h4>
|
@@ -39672,7 +39742,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39672
39742
|
|
39673
39743
|
<h4 class="subsection">6.720.5 Since</h4>
|
39674
39744
|
|
39675
|
-
<p>
|
39745
|
+
<p>1.6.0
|
39676
39746
|
|
39677
39747
|
<div class="node">
|
39678
39748
|
<a name="W1056"></a>
|
@@ -39693,13 +39763,19 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39693
39763
|
|
39694
39764
|
<h4 class="subsection">6.721.2 Content</h4>
|
39695
39765
|
|
39696
|
-
<p
|
39697
|
-
|
39698
|
-
<p>Under construction.
|
39766
|
+
<p>Under construction.
|
39699
39767
|
|
39700
39768
|
<h4 class="subsection">6.721.3 Sample code</h4>
|
39701
39769
|
|
39702
|
-
<pre class="verbatim"
|
39770
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN= 2, BLUE = 4 };
|
39771
|
+
enum Season { SPRING = 1, SUMMER, AUTUMN, WINTER };
|
39772
|
+
|
39773
|
+
extern void func1(enum Color);
|
39774
|
+
|
39775
|
+
void func2(enum Season ssn)
|
39776
|
+
{
|
39777
|
+
func1(ssn); /* W1056 */
|
39778
|
+
}
|
39703
39779
|
</pre>
|
39704
39780
|
|
39705
39781
|
<h4 class="subsection">6.721.4 Related message</h4>
|
@@ -39721,7 +39797,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39721
39797
|
|
39722
39798
|
<h4 class="subsection">6.721.5 Since</h4>
|
39723
39799
|
|
39724
|
-
<p>
|
39800
|
+
<p>1.6.0
|
39725
39801
|
|
39726
39802
|
<div class="node">
|
39727
39803
|
<a name="W1057"></a>
|
@@ -39742,13 +39818,19 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39742
39818
|
|
39743
39819
|
<h4 class="subsection">6.722.2 Content</h4>
|
39744
39820
|
|
39745
|
-
<p
|
39746
|
-
|
39747
|
-
<p>Under construction.
|
39821
|
+
<p>Under construction.
|
39748
39822
|
|
39749
39823
|
<h4 class="subsection">6.722.3 Sample code</h4>
|
39750
39824
|
|
39751
|
-
<pre class="verbatim"
|
39825
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
39826
|
+
enum Season { SPRING = 1, SUMMER, AUTUMN, WINTER };
|
39827
|
+
|
39828
|
+
extern enum Color col;
|
39829
|
+
|
39830
|
+
void func(enum Season ssn)
|
39831
|
+
{
|
39832
|
+
col = ssn; /* W1057 */
|
39833
|
+
}
|
39752
39834
|
</pre>
|
39753
39835
|
|
39754
39836
|
<h4 class="subsection">6.722.4 Related message</h4>
|
@@ -39770,7 +39852,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39770
39852
|
|
39771
39853
|
<h4 class="subsection">6.722.5 Since</h4>
|
39772
39854
|
|
39773
|
-
<p>
|
39855
|
+
<p>1.6.0
|
39774
39856
|
|
39775
39857
|
<div class="node">
|
39776
39858
|
<a name="W1058"></a>
|
@@ -39791,13 +39873,17 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39791
39873
|
|
39792
39874
|
<h4 class="subsection">6.723.2 Content</h4>
|
39793
39875
|
|
39794
|
-
<p
|
39795
|
-
|
39796
|
-
<p>Under construction.
|
39876
|
+
<p>Under construction.
|
39797
39877
|
|
39798
39878
|
<h4 class="subsection">6.723.3 Sample code</h4>
|
39799
39879
|
|
39800
|
-
<pre class="verbatim"
|
39880
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
39881
|
+
enum Season { SPRING = 1, SUMMER, AUTUMN, WINTER };
|
39882
|
+
|
39883
|
+
enum Color func(enum Season ssn)
|
39884
|
+
{
|
39885
|
+
return ssn; /* W1058 */
|
39886
|
+
}
|
39801
39887
|
</pre>
|
39802
39888
|
|
39803
39889
|
<h4 class="subsection">6.723.4 Related message</h4>
|
@@ -39819,7 +39905,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39819
39905
|
|
39820
39906
|
<h4 class="subsection">6.723.5 Since</h4>
|
39821
39907
|
|
39822
|
-
<p>
|
39908
|
+
<p>1.6.0
|
39823
39909
|
|
39824
39910
|
<div class="node">
|
39825
39911
|
<a name="W1059"></a>
|
@@ -39840,13 +39926,18 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39840
39926
|
|
39841
39927
|
<h4 class="subsection">6.724.2 Content</h4>
|
39842
39928
|
|
39843
|
-
<p
|
39844
|
-
|
39845
|
-
<p>Under construction.
|
39929
|
+
<p>Under construction.
|
39846
39930
|
|
39847
39931
|
<h4 class="subsection">6.724.3 Sample code</h4>
|
39848
39932
|
|
39849
|
-
<pre class="verbatim"
|
39933
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
39934
|
+
|
39935
|
+
extern void func1(int num);
|
39936
|
+
|
39937
|
+
void func2(enum Color col)
|
39938
|
+
{
|
39939
|
+
func1(col); /* W1059 */
|
39940
|
+
}
|
39850
39941
|
</pre>
|
39851
39942
|
|
39852
39943
|
<h4 class="subsection">6.724.4 Related message</h4>
|
@@ -39868,7 +39959,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39868
39959
|
|
39869
39960
|
<h4 class="subsection">6.724.5 Since</h4>
|
39870
39961
|
|
39871
|
-
<p>
|
39962
|
+
<p>1.6.0
|
39872
39963
|
|
39873
39964
|
<div class="node">
|
39874
39965
|
<a name="W1060"></a>
|
@@ -39889,13 +39980,16 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39889
39980
|
|
39890
39981
|
<h4 class="subsection">6.725.2 Content</h4>
|
39891
39982
|
|
39892
|
-
<p
|
39893
|
-
|
39894
|
-
<p>Under construction.
|
39983
|
+
<p>Under construction.
|
39895
39984
|
|
39896
39985
|
<h4 class="subsection">6.725.3 Sample code</h4>
|
39897
39986
|
|
39898
|
-
<pre class="verbatim"
|
39987
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
39988
|
+
|
39989
|
+
int func2(enum Color col)
|
39990
|
+
{
|
39991
|
+
return col; /* W1060 */
|
39992
|
+
}
|
39899
39993
|
</pre>
|
39900
39994
|
|
39901
39995
|
<h4 class="subsection">6.725.4 Related message</h4>
|
@@ -39917,7 +40011,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39917
40011
|
|
39918
40012
|
<h4 class="subsection">6.725.5 Since</h4>
|
39919
40013
|
|
39920
|
-
<p>
|
40014
|
+
<p>1.6.0
|
39921
40015
|
|
39922
40016
|
<div class="node">
|
39923
40017
|
<a name="W1061"></a>
|
@@ -39938,13 +40032,18 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39938
40032
|
|
39939
40033
|
<h4 class="subsection">6.726.2 Content</h4>
|
39940
40034
|
|
39941
|
-
<p
|
39942
|
-
|
39943
|
-
<p>Under construction.
|
40035
|
+
<p>Under construction.
|
39944
40036
|
|
39945
40037
|
<h4 class="subsection">6.726.3 Sample code</h4>
|
39946
40038
|
|
39947
|
-
<pre class="verbatim"
|
40039
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
40040
|
+
|
40041
|
+
extern void func1(enum Color);
|
40042
|
+
|
40043
|
+
void func2(int num)
|
40044
|
+
{
|
40045
|
+
func1(num); /* W1061 */
|
40046
|
+
}
|
39948
40047
|
</pre>
|
39949
40048
|
|
39950
40049
|
<h4 class="subsection">6.726.4 Related message</h4>
|
@@ -39966,7 +40065,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39966
40065
|
|
39967
40066
|
<h4 class="subsection">6.726.5 Since</h4>
|
39968
40067
|
|
39969
|
-
<p>
|
40068
|
+
<p>1.6.0
|
39970
40069
|
|
39971
40070
|
<div class="node">
|
39972
40071
|
<a name="W1062"></a>
|
@@ -39987,13 +40086,19 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39987
40086
|
|
39988
40087
|
<h4 class="subsection">6.727.2 Content</h4>
|
39989
40088
|
|
39990
|
-
<p
|
39991
|
-
|
39992
|
-
<p>Under construction.
|
40089
|
+
<p>Under construction.
|
39993
40090
|
|
39994
40091
|
<h4 class="subsection">6.727.3 Sample code</h4>
|
39995
40092
|
|
39996
|
-
<
|
40093
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
40094
|
+
|
40095
|
+
extern enum Color col;
|
40096
|
+
|
40097
|
+
void func(int num)
|
40098
|
+
{
|
40099
|
+
col = num + 1; /* W1062 */
|
40100
|
+
}
|
40101
|
+
</pre>
|
39997
40102
|
|
39998
40103
|
<h4 class="subsection">6.727.4 Related message</h4>
|
39999
40104
|
|
@@ -40014,7 +40119,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
40014
40119
|
|
40015
40120
|
<h4 class="subsection">6.727.5 Since</h4>
|
40016
40121
|
|
40017
|
-
<p>
|
40122
|
+
<p>1.6.0
|
40018
40123
|
|
40019
40124
|
<div class="node">
|
40020
40125
|
<a name="W1063"></a>
|
@@ -40035,13 +40140,16 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
40035
40140
|
|
40036
40141
|
<h4 class="subsection">6.728.2 Content</h4>
|
40037
40142
|
|
40038
|
-
<p
|
40039
|
-
|
40040
|
-
<p>Under construction.
|
40143
|
+
<p>Under construction.
|
40041
40144
|
|
40042
40145
|
<h4 class="subsection">6.728.3 Sample code</h4>
|
40043
40146
|
|
40044
|
-
<pre class="verbatim"
|
40147
|
+
<pre class="verbatim">enum Color { RED = 1, GREEN = 2, BLUE = 4 };
|
40148
|
+
|
40149
|
+
enum Color func(int num)
|
40150
|
+
{
|
40151
|
+
return num / 2; /* W1063 */
|
40152
|
+
}
|
40045
40153
|
</pre>
|
40046
40154
|
|
40047
40155
|
<h4 class="subsection">6.728.4 Related message</h4>
|
@@ -40063,7 +40171,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
40063
40171
|
|
40064
40172
|
<h4 class="subsection">6.728.5 Since</h4>
|
40065
40173
|
|
40066
|
-
<p>
|
40174
|
+
<p>1.6.0
|
40067
40175
|
|
40068
40176
|
<div class="node">
|
40069
40177
|
<a name="W1064"></a>
|