adlint 2.2.0 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/AUTHORS +0 -1
- data/ChangeLog +185 -1
- data/MANIFEST +3 -0
- data/NEWS +28 -5
- data/bin/adlintize +70 -7
- data/etc/conf.d/fallback/traits.erb +12 -3
- data/etc/conf.d/i686-cygwin/traits-gcc_4.3.4.erb +12 -3
- data/etc/conf.d/i686-devkit/traits-gcc_4.5.2.erb +12 -3
- data/etc/conf.d/i686-linux/traits-gcc_4.5.1.erb +12 -3
- data/etc/conf.d/i686-mingw/traits-gcc_4.6.1.erb +12 -3
- data/etc/conf.d/x86_64-ubuntu_12.04/traits-gcc_4.6.3.erb +12 -4
- data/etc/mesg.d/c_builtin/en_US/messages.yml +1 -1
- data/etc/mesg.d/c_builtin/ja_JP/messages.yml +1 -1
- 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/W0070.feature +51 -0
- data/features/code_check/W0071.feature +51 -0
- data/features/code_check/W0425.feature +279 -0
- data/features/code_check/W0692.feature +14 -1
- data/features/code_check/W0834.feature +7 -5
- data/features/code_check/W1073.feature +0 -1
- data/features/code_check/W1074.feature +6 -0
- data/features/code_check/W9003.feature +54 -0
- data/features/support/env.rb +15 -3
- data/lib/adlint/c/expr.rb +30 -6
- data/lib/adlint/c/interp.rb +4 -0
- data/lib/adlint/cpp/eval.rb +24 -14
- data/lib/adlint/cpp/macro.rb +52 -40
- data/lib/adlint/exam/c_builtin/c_check.rb +76 -42
- data/lib/adlint/exam/c_builtin/cpp_check.rb +4 -2
- data/lib/adlint/traits.rb +37 -23
- data/lib/adlint/util.rb +6 -0
- data/lib/adlint/version.rb +3 -3
- 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 +1679 -1651
- data/share/doc/users_guide_en.texi +56 -24
- data/share/doc/users_guide_ja.html +1697 -1669
- data/share/doc/users_guide_ja.texi +57 -24
- data/share/sample/bison-2.5/adlint/adlint_traits.yml +13 -4
- data/share/sample/bison-2.5/adlint/lib/adlint_traits.yml +13 -4
- data/share/sample/bison-2.5/adlint/src/adlint_traits.yml +13 -4
- data/share/sample/ctags-5.8/adlint/adlint_traits.yml +13 -4
- data/share/sample/flex-2.5.35/adlint/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/core/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/enc/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/enc-trans/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-bigdecimal/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-continuation/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-coverage/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-curses/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-date/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-dbm/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-digest/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-bubblebabble/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-md5/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-rmd160/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha1/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-digest-sha2/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-dl/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-dl-callback/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-etc/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-fcntl/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-fiber/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-fiddle/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-gdbm/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-iconv/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-io-console/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-io-nonblock/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-io-wait/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-json-generator/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-json-parser/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-complex/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-mathn-rational/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-nkf/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-openssl/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-pathname/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-psych/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-pty/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-racc-cparse/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-readline/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-ripper/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-sdbm/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-socket/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-stringio/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-strscan/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-syck/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-syslog/adlint_traits.yml +13 -4
- data/share/sample/ruby-1.9.3-p0/adlint/ext-zlib/adlint_traits.yml +13 -4
- data/share/sample/screen-4.0.3/adlint/adlint_traits.yml +13 -4
- data/share/sample/vim-7.3/adlint/vim/adlint_traits.yml +13 -4
- data/share/sample/vim-7.3/adlint/xxd/adlint_traits.yml +13 -4
- data/share/sample/zsh-4.3.15/adlint/adlint_traits.yml +13 -4
- data/share/sample/zsh-4.3.15/adlint/builtins/adlint_traits.yml +13 -4
- data/share/sample/zsh-4.3.15/adlint/core/adlint_traits.yml +13 -4
- data/share/sample/zsh-4.3.15/adlint/modules/adlint_traits.yml +13 -4
- data/share/sample/zsh-4.3.15/adlint/zle/adlint_traits.yml +13 -4
- data/spec/conf.d/default_traits.yml +12 -4
- metadata +5 -2
@@ -2,7 +2,7 @@
|
|
2
2
|
@setfilename users_guide_en.info
|
3
3
|
@documentlanguage en
|
4
4
|
@documentencoding utf-8
|
5
|
-
@settitle AdLint 2.
|
5
|
+
@settitle AdLint 2.4.0 User's Guide
|
6
6
|
|
7
7
|
@copying
|
8
8
|
Copyright (C) 2010-2012, OGIS-RI Co.,Ltd.
|
@@ -883,6 +883,18 @@ And embed environment variables in a string value like below;
|
|
883
883
|
item: "prefix${ENV_VAR}suffix"
|
884
884
|
@end verbatim
|
885
885
|
|
886
|
+
You can also specify multiple values of directory pathname list item by one
|
887
|
+
environment variable like below;
|
888
|
+
|
889
|
+
@verbatim
|
890
|
+
% export ENV_VAR="/usr/local/include:/usr/include"
|
891
|
+
@end verbatim
|
892
|
+
|
893
|
+
@verbatim
|
894
|
+
include_path:
|
895
|
+
- $ENV_VAR
|
896
|
+
@end verbatim
|
897
|
+
|
886
898
|
|
887
899
|
@node Global Traits
|
888
900
|
@subsection Global Traits
|
@@ -955,6 +967,15 @@ string
|
|
955
967
|
@tab
|
956
968
|
Set project name.
|
957
969
|
@item 2
|
970
|
+
@cindex project_traits:project_root
|
971
|
+
@anchor{project_traits:project_root}
|
972
|
+
@tab
|
973
|
+
@code{project_root}
|
974
|
+
@tab
|
975
|
+
string
|
976
|
+
@tab
|
977
|
+
Set pathname of the project root directory.
|
978
|
+
@item 3
|
958
979
|
@cindex project_traits:include_path
|
959
980
|
@anchor{project_traits:include_path}
|
960
981
|
@tab
|
@@ -963,7 +984,8 @@ Set project name.
|
|
963
984
|
array of string
|
964
985
|
@tab
|
965
986
|
Set project specific include path.
|
966
|
-
@
|
987
|
+
An entry can have multiple pathnames with @code{`:'} separators.
|
988
|
+
@item 4
|
967
989
|
@cindex project_traits:initial_header
|
968
990
|
@anchor{project_traits:initial_header}
|
969
991
|
@tab
|
@@ -974,7 +996,7 @@ string
|
|
974
996
|
Set the header files which is included at the top of specified source files.
|
975
997
|
For example, project specific macro definition will be described in this file.
|
976
998
|
|
977
|
-
@item
|
999
|
+
@item 5
|
978
1000
|
@cindex project_traits:coding_style:indent_style
|
979
1001
|
@anchor{project_traits:coding_style:indent_style}
|
980
1002
|
@tab
|
@@ -1021,7 +1043,7 @@ foo(int i)
|
|
1021
1043
|
@}
|
1022
1044
|
@end example
|
1023
1045
|
|
1024
|
-
@item
|
1046
|
+
@item 6
|
1025
1047
|
@cindex project_traits:coding_style:tab_width
|
1026
1048
|
@anchor{project_traits:coding_style:tab_width}
|
1027
1049
|
@tab
|
@@ -1030,7 +1052,7 @@ foo(int i)
|
|
1030
1052
|
integer value
|
1031
1053
|
@tab
|
1032
1054
|
Set the appearance number of digits of tab character
|
1033
|
-
@item
|
1055
|
+
@item 7
|
1034
1056
|
@cindex project_traits:coding_style:indent_width
|
1035
1057
|
@anchor{project_traits:coding_style:indent_width}
|
1036
1058
|
@tab
|
@@ -1039,7 +1061,7 @@ Set the appearance number of digits of tab character
|
|
1039
1061
|
integer value
|
1040
1062
|
@tab
|
1041
1063
|
Set the appearance number of digits of indent
|
1042
|
-
@item
|
1064
|
+
@item 8
|
1043
1065
|
@cindex project_traits:file_encoding
|
1044
1066
|
@anchor{project_traits:file_encoding}
|
1045
1067
|
@tab
|
@@ -1268,6 +1290,7 @@ If @code{`char'} type treat as @code{`unsigned char'}, set true.
|
|
1268
1290
|
array of string
|
1269
1291
|
@tab
|
1270
1292
|
Set the compiler specific include path.
|
1293
|
+
An entry can have multiple pathnames with @code{`:'} separators.
|
1271
1294
|
@item 24
|
1272
1295
|
@cindex compiler_traits:arithmetic:logical_right_shift
|
1273
1296
|
@anchor{compiler_traits:arithmetic:logical_right_shift}
|
@@ -1377,22 +1400,32 @@ In case of @code{true}, AdLint will output messages with name of the
|
|
1377
1400
|
examination package, message category and message severity to the @ref{Message
|
1378
1401
|
File, message file}.
|
1379
1402
|
@item 3
|
1380
|
-
@cindex message_traits:
|
1381
|
-
@anchor{message_traits:
|
1403
|
+
@cindex message_traits:warn_files_in
|
1404
|
+
@anchor{message_traits:warn_files_in}
|
1382
1405
|
@tab
|
1383
|
-
@code{
|
1406
|
+
@code{warn_files_in}
|
1384
1407
|
@tab
|
1385
|
-
string
|
1408
|
+
array of string
|
1386
1409
|
@tab
|
1387
|
-
@b{This item has no effect on AdLint 2.
|
1388
|
-
|
1389
|
-
This item represents root directory path of the target project.
|
1410
|
+
@b{This item has no effect on AdLint 2.4.0, yet.}
|
1390
1411
|
|
1391
1412
|
If a directory path is specified, AdLint will output warning messages about
|
1392
1413
|
source files located under the specified directory.
|
1393
1414
|
If omitted, AdLint will output warning messages about all the files included by
|
1394
1415
|
the target source files such as system headers or 3rd-party library headers.
|
1395
1416
|
@item 4
|
1417
|
+
@cindex message_traits:warn_files_not_in
|
1418
|
+
@anchor{message_traits:warn_files_not_in}
|
1419
|
+
@tab
|
1420
|
+
@code{warn_files_not_in}
|
1421
|
+
@tab
|
1422
|
+
array of string
|
1423
|
+
@tab
|
1424
|
+
@b{This item has no effect on AdLint 2.4.0, yet.}
|
1425
|
+
|
1426
|
+
If a directory path is specified, AdLint will suppress warning messages about
|
1427
|
+
source files located under the specified directory.
|
1428
|
+
@item 5
|
1396
1429
|
@cindex message_traits:individual_selection
|
1397
1430
|
@anchor{message_traits:individual_selection}
|
1398
1431
|
@tab
|
@@ -1400,13 +1433,13 @@ the target source files such as system headers or 3rd-party library headers.
|
|
1400
1433
|
@tab
|
1401
1434
|
boolean
|
1402
1435
|
@tab
|
1403
|
-
@b{This item has no effect on AdLint 2.
|
1436
|
+
@b{This item has no effect on AdLint 2.4.0, yet.}
|
1404
1437
|
|
1405
1438
|
This item enables code check selection by annotations in the target source
|
1406
1439
|
files.
|
1407
1440
|
|
1408
1441
|
In case of @code{true}, code check selection by annotations will be enabled.
|
1409
|
-
@item
|
1442
|
+
@item 6
|
1410
1443
|
@cindex message_traits:exclusion:categories
|
1411
1444
|
@anchor{message_traits:exclusion:categories}
|
1412
1445
|
@tab
|
@@ -1414,10 +1447,10 @@ In case of @code{true}, code check selection by annotations will be enabled.
|
|
1414
1447
|
@tab
|
1415
1448
|
array of string
|
1416
1449
|
@tab
|
1417
|
-
@b{This item has no effect on AdLint 2.
|
1450
|
+
@b{This item has no effect on AdLint 2.4.0, yet.}
|
1418
1451
|
|
1419
1452
|
This item represents excluding code checks by its message categories.
|
1420
|
-
@item
|
1453
|
+
@item 7
|
1421
1454
|
@cindex message_traits:exclusion:severities
|
1422
1455
|
@anchor{message_traits:exclusion:severities}
|
1423
1456
|
@tab
|
@@ -1425,10 +1458,10 @@ This item represents excluding code checks by its message categories.
|
|
1425
1458
|
@tab
|
1426
1459
|
regexp string
|
1427
1460
|
@tab
|
1428
|
-
@b{This item has no effect on AdLint 2.
|
1461
|
+
@b{This item has no effect on AdLint 2.4.0, yet.}
|
1429
1462
|
|
1430
1463
|
This item represents excluding code checks by its message severities.
|
1431
|
-
@item
|
1464
|
+
@item 8
|
1432
1465
|
@cindex message_traits:exclusion:messages
|
1433
1466
|
@anchor{message_traits:exclusion:messages}
|
1434
1467
|
@tab
|
@@ -1436,13 +1469,13 @@ This item represents excluding code checks by its message severities.
|
|
1436
1469
|
@tab
|
1437
1470
|
map of Message ID and string
|
1438
1471
|
@tab
|
1439
|
-
@b{This item has no effect on AdLint 2.
|
1472
|
+
@b{This item has no effect on AdLint 2.4.0, yet.}
|
1440
1473
|
|
1441
1474
|
This item represents excluding code checks by its message ID.
|
1442
1475
|
|
1443
1476
|
Because a message ID is not unique in multiple examination packages, you should
|
1444
1477
|
also specify the name of the examination package including the message.
|
1445
|
-
@item
|
1478
|
+
@item 9
|
1446
1479
|
@cindex message_traits:inclusion:messages
|
1447
1480
|
@anchor{message_traits:inclusion:messages}
|
1448
1481
|
@tab
|
@@ -1450,15 +1483,14 @@ also specify the name of the examination package including the message.
|
|
1450
1483
|
@tab
|
1451
1484
|
map of Message ID and string
|
1452
1485
|
@tab
|
1453
|
-
@b{This item has no effect on AdLint 2.
|
1486
|
+
@b{This item has no effect on AdLint 2.4.0, yet.}
|
1454
1487
|
|
1455
1488
|
This item represents messages which is excluded by settings of @code{exclusion}
|
1456
1489
|
section but will be used by AdLint.
|
1457
1490
|
|
1458
1491
|
For example, you can bring back the specified code checks which is excluded by
|
1459
1492
|
@ref{message_traits:exclusion:categories, exclusion:categories}.
|
1460
|
-
@item
|
1461
|
-
@item 2
|
1493
|
+
@item 10
|
1462
1494
|
@cindex message_traits:change_list
|
1463
1495
|
@anchor{message_traits:change_list}
|
1464
1496
|
@tab
|