adlint 2.6.0 → 2.6.2
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 +122 -0
- data/MANIFEST +1 -0
- data/NEWS +23 -4
- data/README +1 -1
- data/Rakefile +1 -1
- data/etc/mesg.d/c_builtin/en_US/messages.yml +8 -8
- data/etc/mesg.d/c_builtin/ja_JP/messages.yml +8 -8
- data/etc/mesg.d/core/en_US/messages.yml +1 -1
- data/etc/mesg.d/core/ja_JP/messages.yml +1 -1
- data/features/code_check/W0599.feature +71 -0
- data/lib/adlint/c/builtin.rb +1 -1
- data/lib/adlint/c/const.rb +60 -60
- data/lib/adlint/c/conv.rb +3 -3
- data/lib/adlint/c/ctrlexpr.rb +278 -357
- data/lib/adlint/c/expr.rb +1232 -1637
- data/lib/adlint/c/format.rb +26 -26
- data/lib/adlint/c/interp.rb +339 -391
- data/lib/adlint/c/mediator.rb +1 -2
- data/lib/adlint/c/object.rb +8 -9
- data/lib/adlint/c/seqp.rb +1 -1
- data/lib/adlint/c/syntax.rb +6 -6
- data/lib/adlint/c/type.rb +8 -8
- data/lib/adlint/cpp/eval.rb +1 -1
- data/lib/adlint/cpp/macro.rb +4 -4
- data/lib/adlint/cpp/util.rb +1 -1
- data/lib/adlint/exam/c_builtin/c_check.rb +93 -95
- data/lib/adlint/exam/c_builtin/ld_check.rb +4 -4
- data/lib/adlint/traits.rb +7 -16
- data/lib/adlint/util.rb +12 -0
- data/lib/adlint/version.rb +2 -2
- 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 +32 -32
- data/share/doc/users_guide_en.texi +30 -30
- data/share/doc/users_guide_ja.html +32 -32
- data/share/doc/users_guide_ja.texi +30 -30
- metadata +4 -3
data/lib/adlint/version.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
<html lang="ja">
|
2
2
|
<head>
|
3
|
-
<title>AdLint 2.6.
|
3
|
+
<title>AdLint 2.6.2 開発者ガイド</title>
|
4
4
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
-
<meta name="description" content="AdLint 2.6.
|
5
|
+
<meta name="description" content="AdLint 2.6.2 開発者ガイド">
|
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 2.6.
|
47
|
+
<h1 class="settitle">AdLint 2.6.2 開発者ガイド</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 2.6.
|
3
|
+
<title>AdLint 2.6.2 User's Guide</title>
|
4
4
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
5
|
-
<meta name="description" content="AdLint 2.6.
|
5
|
+
<meta name="description" content="AdLint 2.6.2 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 2.6.
|
47
|
+
<h1 class="settitle">AdLint 2.6.2 User's Guide</h1>
|
48
48
|
<div class="node">
|
49
49
|
<a name="Top"></a>
|
50
50
|
<p><hr>
|
@@ -1468,7 +1468,7 @@ examination package, message category and message severity to the <a href="#Mess
|
|
1468
1468
|
</td><td valign="top" width="10%">
|
1469
1469
|
array of string
|
1470
1470
|
</td><td valign="top" width="0%">
|
1471
|
-
<b>This item has no effect on AdLint 2.6.
|
1471
|
+
<b>This item has no effect on AdLint 2.6.2, yet.</b>
|
1472
1472
|
|
1473
1473
|
<p>If a directory path is specified, AdLint will output warning messages about
|
1474
1474
|
source files located under the specified directory.
|
@@ -1480,7 +1480,7 @@ the target source files such as system headers or 3rd-party library headers.
|
|
1480
1480
|
</td><td valign="top" width="10%">
|
1481
1481
|
array of string
|
1482
1482
|
</td><td valign="top" width="0%">
|
1483
|
-
<b>This item has no effect on AdLint 2.6.
|
1483
|
+
<b>This item has no effect on AdLint 2.6.2, yet.</b>
|
1484
1484
|
|
1485
1485
|
<p>If a directory path is specified, AdLint will suppress warning messages about
|
1486
1486
|
source files located under the specified directory.
|
@@ -1490,7 +1490,7 @@ source files located under the specified directory.
|
|
1490
1490
|
</td><td valign="top" width="10%">
|
1491
1491
|
boolean
|
1492
1492
|
</td><td valign="top" width="0%">
|
1493
|
-
<b>This item has no effect on AdLint 2.6.
|
1493
|
+
<b>This item has no effect on AdLint 2.6.2, yet.</b>
|
1494
1494
|
|
1495
1495
|
<p>This item enables code check selection by annotations in the target source
|
1496
1496
|
files.
|
@@ -1502,7 +1502,7 @@ files.
|
|
1502
1502
|
</td><td valign="top" width="10%">
|
1503
1503
|
array of string
|
1504
1504
|
</td><td valign="top" width="0%">
|
1505
|
-
<b>This item has no effect on AdLint 2.6.
|
1505
|
+
<b>This item has no effect on AdLint 2.6.2, yet.</b>
|
1506
1506
|
|
1507
1507
|
<p>This item represents excluding code checks by its message categories.
|
1508
1508
|
<br></td></tr><tr align="left"><td valign="top" width="1%">7
|
@@ -1511,7 +1511,7 @@ array of string
|
|
1511
1511
|
</td><td valign="top" width="10%">
|
1512
1512
|
regexp string
|
1513
1513
|
</td><td valign="top" width="0%">
|
1514
|
-
<b>This item has no effect on AdLint 2.6.
|
1514
|
+
<b>This item has no effect on AdLint 2.6.2, yet.</b>
|
1515
1515
|
|
1516
1516
|
<p>This item represents excluding code checks by its message severities.
|
1517
1517
|
<br></td></tr><tr align="left"><td valign="top" width="1%">8
|
@@ -1520,7 +1520,7 @@ regexp string
|
|
1520
1520
|
</td><td valign="top" width="10%">
|
1521
1521
|
map of Message ID and string
|
1522
1522
|
</td><td valign="top" width="0%">
|
1523
|
-
<b>This item has no effect on AdLint 2.6.
|
1523
|
+
<b>This item has no effect on AdLint 2.6.2, yet.</b>
|
1524
1524
|
|
1525
1525
|
<p>This item represents excluding code checks by its message ID.
|
1526
1526
|
|
@@ -1532,7 +1532,7 @@ also specify the name of the examination package including the message.
|
|
1532
1532
|
</td><td valign="top" width="10%">
|
1533
1533
|
map of Message ID and string
|
1534
1534
|
</td><td valign="top" width="0%">
|
1535
|
-
<b>This item has no effect on AdLint 2.6.
|
1535
|
+
<b>This item has no effect on AdLint 2.6.2, yet.</b>
|
1536
1536
|
|
1537
1537
|
<p>This item represents messages which is excluded by settings of <code>exclusion</code>
|
1538
1538
|
section but will be used by AdLint.
|
@@ -2359,7 +2359,7 @@ Up: <a rel="up" accesskey="u" href="#Top">Top</a>
|
|
2359
2359
|
<li><a href="#W0079">W0079</a>: This array cannot keep final character `\0' which initial value of string literal.
|
2360
2360
|
<li><a href="#W0080">W0080</a>: A global object which const qualified is defined without explicitly initialized.
|
2361
2361
|
<li><a href="#W0081">W0081</a>: A monadic operator`-' becomes unsigned type if it use 'unsigned int' type, 'unsigned long' type or 'unsigned long' type operand.
|
2362
|
-
<li><a href="#W0082">W0082</a>:
|
2362
|
+
<li><a href="#W0082">W0082</a>: Unary operator `-' is applied to an operand whose underlying type `%s' is unsigned.
|
2363
2363
|
<li><a href="#W0084">W0084</a>: Left operand of this comma operator`,' doesn't described the statement which has side-effects.
|
2364
2364
|
<li><a href="#W0085">W0085</a>: This statement doesn't have side-effects. It is highly possible that it having error.
|
2365
2365
|
<li><a href="#W0086">W0086</a>: Second or third operand is verbose statement which doesn't have side-effects in ternary operator (conditional operator).
|
@@ -2765,8 +2765,8 @@ Up: <a rel="up" accesskey="u" href="#Top">Top</a>
|
|
2765
2765
|
<li><a href="#W0575">W0575</a>: The character except for basic source character is used in the string literal.
|
2766
2766
|
<li><a href="#W0576">W0576</a>: The character except for basic source character is used in the comment of source file `%s'.
|
2767
2767
|
<li><a href="#W0577">W0577</a>: The character except for basic source character is used in preprocessing directive of source file `%s'.
|
2768
|
-
<li><a href="#W0578">W0578</a>:
|
2769
|
-
<li><a href="#W0579">W0579</a>:
|
2768
|
+
<li><a href="#W0578">W0578</a>: A generic integer value of the compound expression typed `%s' is implicitly converted into a new value of bigger type `%s'.
|
2769
|
+
<li><a href="#W0579">W0579</a>: A generic integer value of the compound expression typed `%s' is explicitly converted into a new value of bigger type `%s'.
|
2770
2770
|
<li><a href="#W0580">W0580</a>: An address of local static variable is substituted for a pointer which has a wider scope.
|
2771
2771
|
<li><a href="#W0581">W0581</a>: The number or type of actual argument is different from the past.
|
2772
2772
|
<li><a href="#W0582">W0582</a>: The number or type of actual argument is different from the function prototype declaration at the following.
|
@@ -2815,7 +2815,7 @@ Up: <a rel="up" accesskey="u" href="#Top">Top</a>
|
|
2815
2815
|
<li><a href="#W0645">W0645</a>: 'void' type cannot use in the type of formal argument.
|
2816
2816
|
<li><a href="#W0646">W0646</a>: A normal string literal and a wide string literal are contiguous.
|
2817
2817
|
<li><a href="#W0649">W0649</a>: A right operand value of shift operand is negative constant value. This result is undefined.
|
2818
|
-
<li><a href="#W0650">W0650</a>: A right operand
|
2818
|
+
<li><a href="#W0650">W0650</a>: A value of the right operand in a shift expression is bigger than the bit size of the left operand type `%s'. This result is undefined.
|
2819
2819
|
<li><a href="#W0653">W0653</a>: The initial value of an array, structure or union is not enclosed by `{}'.
|
2820
2820
|
<li><a href="#W0654">W0654</a>: The initializer of structure or union must the value of the same structure type or union type.
|
2821
2821
|
<li><a href="#W0655">W0655</a>: This is bit field statement which the size is undefined.
|
@@ -2877,7 +2877,7 @@ Up: <a rel="up" accesskey="u" href="#Top">Top</a>
|
|
2877
2877
|
<li><a href="#W0716">W0716</a>: A bit operator or both sides operand of arithmetic operator is a substantive 'boolean' expression.
|
2878
2878
|
<li><a href="#W0717">W0717</a>: A bit operator or left side operand of arithmetic operator is a substantive 'boolean' expression.
|
2879
2879
|
<li><a href="#W0718">W0718</a>: A bit operator or right side operand of arithmetic operator is a substantive 'boolean' expression.
|
2880
|
-
<li><a href="#W0719">W0719</a>: A right operand
|
2880
|
+
<li><a href="#W0719">W0719</a>: A value of the right operand in a shift expression is bigger than the bit size of the left operand underlying type `%s'.
|
2881
2881
|
<li><a href="#W0720">W0720</a>: The value with floating-point type doesn't fit in the range of converted type.
|
2882
2882
|
<li><a href="#W0721">W0721</a>: This volatile integer type doesn't have enough size to keep pointer value.
|
2883
2883
|
<li><a href="#W0722">W0722</a>: A value of signed statement is overflow.
|
@@ -3000,8 +3000,8 @@ Up: <a rel="up" accesskey="u" href="#Top">Top</a>
|
|
3000
3000
|
<li><a href="#W1048">W1048</a>: The multi byte string literal is an implementation defined value.
|
3001
3001
|
<li><a href="#W1049">W1049</a>: The result of conversion to signed integer type in integer expression might not be expressed by a signed type.
|
3002
3002
|
<li><a href="#W1050">W1050</a>: The result of conversion to signed integer type in integer expression is not express by a signed type.
|
3003
|
-
<li><a href="#W1051">W1051</a>: The result of arithmetic
|
3004
|
-
<li><a href="#W1052">W1052</a>: The result of arithmetic
|
3003
|
+
<li><a href="#W1051">W1051</a>: The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
3004
|
+
<li><a href="#W1052">W1052</a>: The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
3005
3005
|
<li><a href="#W1053">W1053</a>: A numeric constants is passed to an actual argument which formal argument is enumeration type.
|
3006
3006
|
<li><a href="#W1054">W1054</a>: A non enumeration type expression is substituted for the enumeration type.
|
3007
3007
|
<li><a href="#W1055">W1055</a>: A non enumeration type expression is returned from the function which return value is enumeration type.
|
@@ -5852,7 +5852,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
5852
5852
|
|
5853
5853
|
<h4 class="subsection">6.74.1 Message body</h4>
|
5854
5854
|
|
5855
|
-
<p>
|
5855
|
+
<p>Unary operator `-' is applied to an operand whose underlying type `%s' is unsigned.
|
5856
5856
|
|
5857
5857
|
<h4 class="subsection">6.74.2 Content</h4>
|
5858
5858
|
|
@@ -28677,7 +28677,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
28677
28677
|
|
28678
28678
|
<h4 class="subsection">6.480.1 Message body</h4>
|
28679
28679
|
|
28680
|
-
<p>
|
28680
|
+
<p>A generic integer value of the compound expression typed `%s' is implicitly converted into a new value of bigger type `%s'.
|
28681
28681
|
|
28682
28682
|
<h4 class="subsection">6.480.2 Content</h4>
|
28683
28683
|
|
@@ -28714,7 +28714,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
28714
28714
|
|
28715
28715
|
<h4 class="subsection">6.481.1 Message body</h4>
|
28716
28716
|
|
28717
|
-
<p>
|
28717
|
+
<p>A generic integer value of the compound expression typed `%s' is explicitly converted into a new value of bigger type `%s'.
|
28718
28718
|
|
28719
28719
|
<h4 class="subsection">6.481.2 Content</h4>
|
28720
28720
|
|
@@ -30824,7 +30824,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
30824
30824
|
<h4 class="subsection">6.529.4 Related message</h4>
|
30825
30825
|
|
30826
30826
|
<ul>
|
30827
|
-
<li><a href="#W0650">W0650</a> A right operand
|
30827
|
+
<li><a href="#W0650">W0650</a> A value of the right operand in a shift expression is bigger than the bit size of the left operand type `%s'. This result is undefined.
|
30828
30828
|
</ul>
|
30829
30829
|
|
30830
30830
|
<h4 class="subsection">6.529.5 Since</h4>
|
@@ -30846,7 +30846,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
30846
30846
|
|
30847
30847
|
<h4 class="subsection">6.530.1 Message body</h4>
|
30848
30848
|
|
30849
|
-
<p>A right operand
|
30849
|
+
<p>A value of the right operand in a shift expression is bigger than the bit size of the left operand type `%s'. This result is undefined.
|
30850
30850
|
|
30851
30851
|
<h4 class="subsection">6.530.2 Content</h4>
|
30852
30852
|
|
@@ -34308,7 +34308,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
34308
34308
|
|
34309
34309
|
<h4 class="subsection">6.592.1 Message body</h4>
|
34310
34310
|
|
34311
|
-
<p>A right operand
|
34311
|
+
<p>A value of the right operand in a shift expression is bigger than the bit size of the left operand underlying type `%s'.
|
34312
34312
|
|
34313
34313
|
<h4 class="subsection">6.592.2 Content</h4>
|
34314
34314
|
|
@@ -39689,8 +39689,8 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39689
39689
|
|
39690
39690
|
<ul>
|
39691
39691
|
<li><a href="#W1050">W1050</a> The result of conversion to signed integer type in integer expression is not express by a signed type.
|
39692
|
-
<li><a href="#W1051">W1051</a> The result of arithmetic
|
39693
|
-
<li><a href="#W1052">W1052</a> The result of arithmetic
|
39692
|
+
<li><a href="#W1051">W1051</a> The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
39693
|
+
<li><a href="#W1052">W1052</a> The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
39694
39694
|
</ul>
|
39695
39695
|
|
39696
39696
|
<h4 class="subsection">6.713.5 Since</h4>
|
@@ -39742,8 +39742,8 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39742
39742
|
|
39743
39743
|
<ul>
|
39744
39744
|
<li><a href="#W1049">W1049</a> The result of conversion to signed integer type in integer expression might not be expressed by a signed type.
|
39745
|
-
<li><a href="#W1051">W1051</a> The result of arithmetic
|
39746
|
-
<li><a href="#W1052">W1052</a> The result of arithmetic
|
39745
|
+
<li><a href="#W1051">W1051</a> The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
39746
|
+
<li><a href="#W1052">W1052</a> The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
39747
39747
|
</ul>
|
39748
39748
|
|
39749
39749
|
<h4 class="subsection">6.714.5 Since</h4>
|
@@ -39765,7 +39765,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39765
39765
|
|
39766
39766
|
<h4 class="subsection">6.715.1 Message body</h4>
|
39767
39767
|
|
39768
|
-
<p>The result of arithmetic
|
39768
|
+
<p>The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
39769
39769
|
|
39770
39770
|
<h4 class="subsection">6.715.2 Content</h4>
|
39771
39771
|
|
@@ -39788,7 +39788,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39788
39788
|
<ul>
|
39789
39789
|
<li><a href="#W1049">W1049</a> The result of conversion to signed integer type in integer expression might not be expressed by a signed type.
|
39790
39790
|
<li><a href="#W1050">W1050</a> The result of conversion to signed integer type in integer expression is not express by a signed type.
|
39791
|
-
<li><a href="#W1052">W1052</a> The result of arithmetic
|
39791
|
+
<li><a href="#W1052">W1052</a> The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
39792
39792
|
</ul>
|
39793
39793
|
|
39794
39794
|
<h4 class="subsection">6.715.5 Since</h4>
|
@@ -39810,7 +39810,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39810
39810
|
|
39811
39811
|
<h4 class="subsection">6.716.1 Message body</h4>
|
39812
39812
|
|
39813
|
-
<p>The result of arithmetic
|
39813
|
+
<p>The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
39814
39814
|
|
39815
39815
|
<h4 class="subsection">6.716.2 Content</h4>
|
39816
39816
|
|
@@ -39833,7 +39833,7 @@ Up: <a rel="up" accesskey="u" href="#Messages">Messages</a>
|
|
39833
39833
|
<ul>
|
39834
39834
|
<li><a href="#W1049">W1049</a> The result of conversion to signed integer type in integer expression might not be expressed by a signed type.
|
39835
39835
|
<li><a href="#W1050">W1050</a> The result of conversion to signed integer type in integer expression is not express by a signed type.
|
39836
|
-
<li><a href="#W1051">W1051</a> The result of arithmetic
|
39836
|
+
<li><a href="#W1051">W1051</a> The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
39837
39837
|
</ul>
|
39838
39838
|
|
39839
39839
|
<h4 class="subsection">6.716.5 Since</h4>
|
@@ -41074,7 +41074,7 @@ void func(void)
|
|
41074
41074
|
return; /* W9001: Control never reaches here! */
|
41075
41075
|
}
|
41076
41076
|
/*
|
41077
|
-
* ISO standard
|
41077
|
+
* ISO standard says;
|
41078
41078
|
* Usual Arithmetic Conversion performed before evaluating
|
41079
41079
|
* the expression "i < ui".
|
41080
41080
|
* Usual Arithmetic Conversion makes "i < ui" into
|
@@ -2,7 +2,7 @@
|
|
2
2
|
@setfilename users_guide_en.info
|
3
3
|
@documentlanguage en
|
4
4
|
@documentencoding utf-8
|
5
|
-
@settitle AdLint 2.6.
|
5
|
+
@settitle AdLint 2.6.2 User's Guide
|
6
6
|
|
7
7
|
@copying
|
8
8
|
Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
|
@@ -1407,7 +1407,7 @@ File, message file}.
|
|
1407
1407
|
@tab
|
1408
1408
|
array of string
|
1409
1409
|
@tab
|
1410
|
-
@b{This item has no effect on AdLint 2.6.
|
1410
|
+
@b{This item has no effect on AdLint 2.6.2, yet.}
|
1411
1411
|
|
1412
1412
|
If a directory path is specified, AdLint will output warning messages about
|
1413
1413
|
source files located under the specified directory.
|
@@ -1421,7 +1421,7 @@ the target source files such as system headers or 3rd-party library headers.
|
|
1421
1421
|
@tab
|
1422
1422
|
array of string
|
1423
1423
|
@tab
|
1424
|
-
@b{This item has no effect on AdLint 2.6.
|
1424
|
+
@b{This item has no effect on AdLint 2.6.2, yet.}
|
1425
1425
|
|
1426
1426
|
If a directory path is specified, AdLint will suppress warning messages about
|
1427
1427
|
source files located under the specified directory.
|
@@ -1433,7 +1433,7 @@ source files located under the specified directory.
|
|
1433
1433
|
@tab
|
1434
1434
|
boolean
|
1435
1435
|
@tab
|
1436
|
-
@b{This item has no effect on AdLint 2.6.
|
1436
|
+
@b{This item has no effect on AdLint 2.6.2, yet.}
|
1437
1437
|
|
1438
1438
|
This item enables code check selection by annotations in the target source
|
1439
1439
|
files.
|
@@ -1447,7 +1447,7 @@ In case of @code{true}, code check selection by annotations will be enabled.
|
|
1447
1447
|
@tab
|
1448
1448
|
array of string
|
1449
1449
|
@tab
|
1450
|
-
@b{This item has no effect on AdLint 2.6.
|
1450
|
+
@b{This item has no effect on AdLint 2.6.2, yet.}
|
1451
1451
|
|
1452
1452
|
This item represents excluding code checks by its message categories.
|
1453
1453
|
@item 7
|
@@ -1458,7 +1458,7 @@ This item represents excluding code checks by its message categories.
|
|
1458
1458
|
@tab
|
1459
1459
|
regexp string
|
1460
1460
|
@tab
|
1461
|
-
@b{This item has no effect on AdLint 2.6.
|
1461
|
+
@b{This item has no effect on AdLint 2.6.2, yet.}
|
1462
1462
|
|
1463
1463
|
This item represents excluding code checks by its message severities.
|
1464
1464
|
@item 8
|
@@ -1469,7 +1469,7 @@ This item represents excluding code checks by its message severities.
|
|
1469
1469
|
@tab
|
1470
1470
|
map of Message ID and string
|
1471
1471
|
@tab
|
1472
|
-
@b{This item has no effect on AdLint 2.6.
|
1472
|
+
@b{This item has no effect on AdLint 2.6.2, yet.}
|
1473
1473
|
|
1474
1474
|
This item represents excluding code checks by its message ID.
|
1475
1475
|
|
@@ -1483,7 +1483,7 @@ also specify the name of the examination package including the message.
|
|
1483
1483
|
@tab
|
1484
1484
|
map of Message ID and string
|
1485
1485
|
@tab
|
1486
|
-
@b{This item has no effect on AdLint 2.6.
|
1486
|
+
@b{This item has no effect on AdLint 2.6.2, yet.}
|
1487
1487
|
|
1488
1488
|
This item represents messages which is excluded by settings of @code{exclusion}
|
1489
1489
|
section but will be used by AdLint.
|
@@ -2391,7 +2391,7 @@ context_line (in case of @ref{message_traits:message_with_class, message_with_cl
|
|
2391
2391
|
* W0079::This array cannot keep final character `\0' which initial value of string literal.
|
2392
2392
|
* W0080::A global object which const qualified is defined without explicitly initialized.
|
2393
2393
|
* W0081::A monadic operator`-' becomes unsigned type if it use 'unsigned int' type, 'unsigned long' type or 'unsigned long' type operand.
|
2394
|
-
* W0082::
|
2394
|
+
* W0082::Unary operator `-' is applied to an operand whose underlying type `%s' is unsigned.
|
2395
2395
|
* W0084::Left operand of this comma operator`,' doesn't described the statement which has side-effects.
|
2396
2396
|
* W0085::This statement doesn't have side-effects. It is highly possible that it having error.
|
2397
2397
|
* W0086::Second or third operand is verbose statement which doesn't have side-effects in ternary operator (conditional operator).
|
@@ -2797,8 +2797,8 @@ context_line (in case of @ref{message_traits:message_with_class, message_with_cl
|
|
2797
2797
|
* W0575::The character except for basic source character is used in the string literal.
|
2798
2798
|
* W0576::The character except for basic source character is used in the comment of source file `%s'.
|
2799
2799
|
* W0577::The character except for basic source character is used in preprocessing directive of source file `%s'.
|
2800
|
-
* W0578::
|
2801
|
-
* W0579::
|
2800
|
+
* W0578::A generic integer value of the compound expression typed `%s' is implicitly converted into a new value of bigger type `%s'.
|
2801
|
+
* W0579::A generic integer value of the compound expression typed `%s' is explicitly converted into a new value of bigger type `%s'.
|
2802
2802
|
* W0580::An address of local static variable is substituted for a pointer which has a wider scope.
|
2803
2803
|
* W0581::The number or type of actual argument is different from the past.
|
2804
2804
|
* W0582::The number or type of actual argument is different from the function prototype declaration at the following.
|
@@ -2847,7 +2847,7 @@ context_line (in case of @ref{message_traits:message_with_class, message_with_cl
|
|
2847
2847
|
* W0645::'void' type cannot use in the type of formal argument.
|
2848
2848
|
* W0646::A normal string literal and a wide string literal are contiguous.
|
2849
2849
|
* W0649::A right operand value of shift operand is negative constant value. This result is undefined.
|
2850
|
-
* W0650::A right operand
|
2850
|
+
* W0650::A value of the right operand in a shift expression is bigger than the bit size of the left operand type `%s'. This result is undefined.
|
2851
2851
|
* W0653::The initial value of an array, structure or union is not enclosed by `@{@}'.
|
2852
2852
|
* W0654::The initializer of structure or union must the value of the same structure type or union type.
|
2853
2853
|
* W0655::This is bit field statement which the size is undefined.
|
@@ -2909,7 +2909,7 @@ context_line (in case of @ref{message_traits:message_with_class, message_with_cl
|
|
2909
2909
|
* W0716::A bit operator or both sides operand of arithmetic operator is a substantive 'boolean' expression.
|
2910
2910
|
* W0717::A bit operator or left side operand of arithmetic operator is a substantive 'boolean' expression.
|
2911
2911
|
* W0718::A bit operator or right side operand of arithmetic operator is a substantive 'boolean' expression.
|
2912
|
-
* W0719::A right operand
|
2912
|
+
* W0719::A value of the right operand in a shift expression is bigger than the bit size of the left operand underlying type `%s'.
|
2913
2913
|
* W0720::The value with floating-point type doesn't fit in the range of converted type.
|
2914
2914
|
* W0721::This volatile integer type doesn't have enough size to keep pointer value.
|
2915
2915
|
* W0722::A value of signed statement is overflow.
|
@@ -3032,8 +3032,8 @@ context_line (in case of @ref{message_traits:message_with_class, message_with_cl
|
|
3032
3032
|
* W1048::The multi byte string literal is an implementation defined value.
|
3033
3033
|
* W1049::The result of conversion to signed integer type in integer expression might not be expressed by a signed type.
|
3034
3034
|
* W1050::The result of conversion to signed integer type in integer expression is not express by a signed type.
|
3035
|
-
* W1051::The result of arithmetic
|
3036
|
-
* W1052::The result of arithmetic
|
3035
|
+
* W1051::The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
3036
|
+
* W1052::The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
3037
3037
|
* W1053::A numeric constants is passed to an actual argument which formal argument is enumeration type.
|
3038
3038
|
* W1054::A non enumeration type expression is substituted for the enumeration type.
|
3039
3039
|
* W1055::A non enumeration type expression is returned from the function which return value is enumeration type.
|
@@ -5296,7 +5296,7 @@ None.
|
|
5296
5296
|
|
5297
5297
|
@subsection Message body
|
5298
5298
|
|
5299
|
-
|
5299
|
+
Unary operator `-' is applied to an operand whose underlying type `%s' is unsigned.
|
5300
5300
|
|
5301
5301
|
@subsection Content
|
5302
5302
|
|
@@ -24893,7 +24893,7 @@ Under construction.
|
|
24893
24893
|
|
24894
24894
|
@subsection Message body
|
24895
24895
|
|
24896
|
-
|
24896
|
+
A generic integer value of the compound expression typed `%s' is implicitly converted into a new value of bigger type `%s'.
|
24897
24897
|
|
24898
24898
|
@subsection Content
|
24899
24899
|
|
@@ -24922,7 +24922,7 @@ None.
|
|
24922
24922
|
|
24923
24923
|
@subsection Message body
|
24924
24924
|
|
24925
|
-
|
24925
|
+
A generic integer value of the compound expression typed `%s' is explicitly converted into a new value of bigger type `%s'.
|
24926
24926
|
|
24927
24927
|
@subsection Content
|
24928
24928
|
|
@@ -26657,7 +26657,7 @@ int foo(int i)
|
|
26657
26657
|
@subsection Related message
|
26658
26658
|
|
26659
26659
|
@itemize
|
26660
|
-
@item @ref{W0650} A right operand
|
26660
|
+
@item @ref{W0650} A value of the right operand in a shift expression is bigger than the bit size of the left operand type `%s'. This result is undefined.
|
26661
26661
|
@end itemize
|
26662
26662
|
|
26663
26663
|
@subsection Since
|
@@ -26670,7 +26670,7 @@ int foo(int i)
|
|
26670
26670
|
|
26671
26671
|
@subsection Message body
|
26672
26672
|
|
26673
|
-
A right operand
|
26673
|
+
A value of the right operand in a shift expression is bigger than the bit size of the left operand type `%s'. This result is undefined.
|
26674
26674
|
|
26675
26675
|
@subsection Content
|
26676
26676
|
|
@@ -29640,7 +29640,7 @@ int func(int a, int b, int c)
|
|
29640
29640
|
|
29641
29641
|
@subsection Message body
|
29642
29642
|
|
29643
|
-
A right operand
|
29643
|
+
A value of the right operand in a shift expression is bigger than the bit size of the left operand underlying type `%s'.
|
29644
29644
|
|
29645
29645
|
@subsection Content
|
29646
29646
|
|
@@ -34062,8 +34062,8 @@ void func(unsigned int ui)
|
|
34062
34062
|
|
34063
34063
|
@itemize
|
34064
34064
|
@item @ref{W1050} The result of conversion to signed integer type in integer expression is not express by a signed type.
|
34065
|
-
@item @ref{W1051} The result of arithmetic
|
34066
|
-
@item @ref{W1052} The result of arithmetic
|
34065
|
+
@item @ref{W1051} The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
34066
|
+
@item @ref{W1052} The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
34067
34067
|
@end itemize
|
34068
34068
|
|
34069
34069
|
@subsection Since
|
@@ -34108,8 +34108,8 @@ void func(unsigned int ui)
|
|
34108
34108
|
|
34109
34109
|
@itemize
|
34110
34110
|
@item @ref{W1049} The result of conversion to signed integer type in integer expression might not be expressed by a signed type.
|
34111
|
-
@item @ref{W1051} The result of arithmetic
|
34112
|
-
@item @ref{W1052} The result of arithmetic
|
34111
|
+
@item @ref{W1051} The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
34112
|
+
@item @ref{W1052} The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
34113
34113
|
@end itemize
|
34114
34114
|
|
34115
34115
|
@subsection Since
|
@@ -34122,7 +34122,7 @@ void func(unsigned int ui)
|
|
34122
34122
|
|
34123
34123
|
@subsection Message body
|
34124
34124
|
|
34125
|
-
The result of arithmetic
|
34125
|
+
The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
34126
34126
|
|
34127
34127
|
@subsection Content
|
34128
34128
|
|
@@ -34146,7 +34146,7 @@ unsigned int func(unsigned int ui)
|
|
34146
34146
|
@itemize
|
34147
34147
|
@item @ref{W1049} The result of conversion to signed integer type in integer expression might not be expressed by a signed type.
|
34148
34148
|
@item @ref{W1050} The result of conversion to signed integer type in integer expression is not express by a signed type.
|
34149
|
-
@item @ref{W1052} The result of arithmetic
|
34149
|
+
@item @ref{W1052} The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
34150
34150
|
@end itemize
|
34151
34151
|
|
34152
34152
|
@subsection Since
|
@@ -34159,7 +34159,7 @@ unsigned int func(unsigned int ui)
|
|
34159
34159
|
|
34160
34160
|
@subsection Message body
|
34161
34161
|
|
34162
|
-
The result of arithmetic
|
34162
|
+
The result of unsigned arithmetic expression typed `%s' can be going around by overflow.
|
34163
34163
|
|
34164
34164
|
@subsection Content
|
34165
34165
|
|
@@ -34183,7 +34183,7 @@ unsigned int func(unsigned int a, unsigned int b)
|
|
34183
34183
|
@itemize
|
34184
34184
|
@item @ref{W1049} The result of conversion to signed integer type in integer expression might not be expressed by a signed type.
|
34185
34185
|
@item @ref{W1050} The result of conversion to signed integer type in integer expression is not express by a signed type.
|
34186
|
-
@item @ref{W1051} The result of arithmetic
|
34186
|
+
@item @ref{W1051} The result of unsigned arithmetic expression typed `%s' is going around 0 by overflow.
|
34187
34187
|
@end itemize
|
34188
34188
|
|
34189
34189
|
@subsection Since
|
@@ -35217,7 +35217,7 @@ void func(void)
|
|
35217
35217
|
return; /* W9001: Control never reaches here! */
|
35218
35218
|
}
|
35219
35219
|
/*
|
35220
|
-
* ISO standard
|
35220
|
+
* ISO standard says;
|
35221
35221
|
* Usual Arithmetic Conversion performed before evaluating
|
35222
35222
|
* the expression "i < ui".
|
35223
35223
|
* Usual Arithmetic Conversion makes "i < ui" into
|