[clang-tidy] Reformatted docs + minor updates

llvm-svn: 260065
This commit is contained in:
Alexander Kornienko 2016-02-08 00:19:29 +00:00
parent d0759abc19
commit f1d54eb222
2 changed files with 213 additions and 165 deletions

View File

@ -27,132 +27,154 @@ using namespace llvm;
static cl::OptionCategory ClangTidyCategory("clang-tidy options");
static cl::extrahelp CommonHelp(CommonOptionsParser::HelpMessage);
static cl::extrahelp ClangTidyHelp(
"Configuration files:\n"
" clang-tidy attempts to read configuration for each source file from a\n"
" .clang-tidy file located in the closest parent directory of the source\n"
" file. If any configuration options have a corresponding command-line\n"
" option, command-line option takes precedence. The effective\n"
" configuration can be inspected using -dump-config:\n"
"\n"
" $ clang-tidy -dump-config - --\n"
" ---\n"
" Checks: '-*,some-check'\n"
" HeaderFilterRegex: ''\n"
" AnalyzeTemporaryDtors: false\n"
" User: user\n"
" CheckOptions: \n"
" - key: some-check.SomeOption\n"
" value: 'some value'\n"
" ...\n"
"\n\n");
static cl::extrahelp ClangTidyHelp(R"(
Configuration files:
clang-tidy attempts to read configuration for each source file from a
.clang-tidy file located in the closest parent directory of the source
file. If any configuration options have a corresponding command-line
option, command-line option takes precedence. The effective
configuration can be inspected using -dump-config:
$ clang-tidy -dump-config - --
---
Checks: '-*,some-check'
WarningsAsErrors: ''
HeaderFilterRegex: ''
AnalyzeTemporaryDtors: false
User: user
CheckOptions:
- key: some-check.SomeOption
value: 'some value'
...
)");
const char DefaultChecks[] = // Enable these checks:
"clang-diagnostic-*," // * compiler diagnostics
"clang-analyzer-*," // * Static Analyzer checks
"-clang-analyzer-alpha*"; // * but not alpha checks: many false positives
static cl::opt<std::string>
Checks("checks", cl::desc("Comma-separated list of globs with optional '-'\n"
"prefix. Globs are processed in order of appearance\n"
"in the list. Globs without '-' prefix add checks\n"
"with matching names to the set, globs with the '-'\n"
"prefix remove checks with matching names from the\n"
"set of enabled checks.\n"
"This option's value is appended to the value read\n"
"from a .clang-tidy file, if any."),
cl::init(""), cl::cat(ClangTidyCategory));
static cl::opt<std::string> Checks("checks", cl::desc(R"(
Comma-separated list of globs with optional '-'
prefix. Globs are processed in order of
appearance in the list. Globs without '-'
prefix add checks with matching names to the
set, globs with the '-' prefix remove checks
with matching names from the set of enabled
checks. This option's value is appended to the
value of the 'Checks' option in .clang-tidy
file, if any.
)"),
cl::init(""), cl::cat(ClangTidyCategory));
static cl::opt<std::string>
WarningsAsErrors("warnings-as-errors",
cl::desc("Upgrades warnings to errors. "
"Same format as '-checks'."),
cl::init(""), cl::cat(ClangTidyCategory));
static cl::opt<std::string> WarningsAsErrors("warnings-as-errors", cl::desc(R"(
Upgrades warnings to errors. Same format as
'-checks'.
This option's value is appended to the value of
the 'WarningsAsErrors' option in .clang-tidy
file, if any.
)"),
cl::init(""),
cl::cat(ClangTidyCategory));
static cl::opt<std::string>
HeaderFilter("header-filter",
cl::desc("Regular expression matching the names of the\n"
"headers to output diagnostics from. Diagnostics\n"
"from the main file of each translation unit are\n"
"always displayed.\n"
"Can be used together with -line-filter.\n"
"This option overrides the value read from a\n"
".clang-tidy file."),
cl::init(""), cl::cat(ClangTidyCategory));
static cl::opt<std::string> HeaderFilter("header-filter", cl::desc(R"(
Regular expression matching the names of the
headers to output diagnostics from. Diagnostics
from the main file of each translation unit are
always displayed.
Can be used together with -line-filter.
This option overrides the 'HeaderFilter' option
in .clang-tidy file, if any.
)"),
cl::init(""),
cl::cat(ClangTidyCategory));
static cl::opt<bool>
SystemHeaders("system-headers",
cl::desc("Display the errors from system headers."),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<std::string>
LineFilter("line-filter",
cl::desc("List of files with line ranges to filter the\n"
"warnings. Can be used together with\n"
"-header-filter. The format of the list is a JSON\n"
"array of objects:\n"
" [\n"
" {\"name\":\"file1.cpp\",\"lines\":[[1,3],[5,7]]},\n"
" {\"name\":\"file2.h\"}\n"
" ]"),
cl::init(""), cl::cat(ClangTidyCategory));
LineFilter("line-filter",
cl::desc(R"(
List of files with line ranges to filter the
warnings. Can be used together with
-header-filter. The format of the list is a
JSON array of objects:
[
{"name":"file1.cpp","lines":[[1,3],[5,7]]},
{"name":"file2.h"}
]
)"),
cl::init(""), cl::cat(ClangTidyCategory));
static cl::opt<bool>
Fix("fix", cl::desc("Apply suggested fixes. Without -fix-errors\n"
"clang-tidy will bail out if any compilation\n"
"errors were found."),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool> Fix("fix", cl::desc(R"(
Apply suggested fixes. Without -fix-errors
clang-tidy will bail out if any compilation
errors were found.
)"),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool>
FixErrors("fix-errors",
cl::desc("Apply suggested fixes even if compilation errors\n"
"were found. If compiler errors have attached\n"
"fix-its, clang-tidy will apply them as well."),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool> FixErrors("fix-errors", cl::desc(R"(
Apply suggested fixes even if compilation
errors were found. If compiler errors have
attached fix-its, clang-tidy will apply them as
well.
)"),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool>
ListChecks("list-checks",
cl::desc("List all enabled checks and exit. Use with\n"
"-checks=* to list all available checks."),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool> ListChecks("list-checks", cl::desc(R"(
List all enabled checks and exit. Use with
-checks=* to list all available checks.
)"),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<std::string> Config(
"config",
cl::desc("Specifies a configuration in YAML/JSON format:\n"
" -config=\"{Checks: '*', CheckOptions: [{key: x, value: y}]}\"\n"
"When the value is empty, clang-tidy will attempt to find\n"
"a file named .clang-tidy for each source file in its parent\n"
"directories."),
cl::init(""), cl::cat(ClangTidyCategory));
static cl::opt<std::string> Config("config", cl::desc(R"(
Specifies a configuration in YAML/JSON format:
-config="{Checks: '*',
CheckOptions: [{key: x,
value: y}]}"
When the value is empty, clang-tidy will
attempt to find a file named .clang-tidy for
each source file in its parent directories.
)"),
cl::init(""), cl::cat(ClangTidyCategory));
static cl::opt<bool> DumpConfig(
"dump-config",
cl::desc("Dumps configuration in the YAML format to stdout. This option\n"
"can be used along with a file name (and '--' if the file is\n"
"outside of a project with configured compilation database). The\n"
"configuration used for this file will be printed.\n"
"Use along with -checks=* to include configuration of all\n"
"checks.\n"),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool> DumpConfig("dump-config", cl::desc(R"(
Dumps configuration in the YAML format to
stdout. This option can be used along with a
file name (and '--' if the file is outside of a
project with configured compilation database).
The configuration used for this file will be
printed.
Use along with -checks=* to include
configuration of all checks.
)"),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool> EnableCheckProfile(
"enable-check-profile",
cl::desc("Enable per-check timing profiles, and print a report to stderr."),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool> EnableCheckProfile("enable-check-profile", cl::desc(R"(
Enable per-check timing profiles, and print a
report to stderr.
)"),
cl::init(false),
cl::cat(ClangTidyCategory));
static cl::opt<bool> AnalyzeTemporaryDtors(
"analyze-temporary-dtors",
cl::desc("Enable temporary destructor-aware analysis in\n"
"clang-analyzer- checks.\n"
"This option overrides the value read from a\n"
".clang-tidy file."),
cl::init(false), cl::cat(ClangTidyCategory));
static cl::opt<bool> AnalyzeTemporaryDtors("analyze-temporary-dtors",
cl::desc(R"(
Enable temporary destructor-aware analysis in
clang-analyzer- checks.
This option overrides the value read from a
.clang-tidy file.
)"),
cl::init(false),
cl::cat(ClangTidyCategory));
static cl::opt<std::string> ExportFixes(
"export-fixes",
cl::desc("YAML file to store suggested fixes in. The\n"
"stored fixes can be applied to the input source\n"
"code with clang-apply-replacements."),
cl::value_desc("filename"), cl::cat(ClangTidyCategory));
static cl::opt<std::string> ExportFixes("export-fixes", cl::desc(R"(
YAML file to store suggested fixes in. The
stored fixes can be applied to the input sorce
code with clang-apply-replacements.
)"),
cl::value_desc("filename"),
cl::cat(ClangTidyCategory));
namespace clang {
namespace tidy {
@ -180,7 +202,8 @@ static void printStats(const ClangTidyStats &Stats) {
llvm::errs() << ").\n";
if (Stats.ErrorsIgnoredNonUserCode)
llvm::errs() << "Use -header-filter=.* to display errors from all "
"non-system headers.\n";
"non-system headers. Use -system-headers to display "
"errors from system headers as well.\n";
}
}

View File

@ -90,69 +90,92 @@ An overview of all the command-line options:
OPTIONS:
General options:
Generic Options:
-help - Display available options (-help-hidden
for more)
-help-list - Display list of available options
(-help-list-hidden for more)
-version - Display the version of this program
-help - Display available options (-help-hidden for more)
-help-list - Display list of available options (-help-list-hidden for more)
-version - Display the version of this program
clang-tidy options:
-analyze-temporary-dtors - Enable temporary destructor-aware analysis in
clang-analyzer- checks.
This option overrides the value read from a
.clang-tidy file.
-checks=<string> - Comma-separated list of globs with optional '-'
prefix. Globs are processed in order of appearance
in the list. Globs without '-' prefix add checks
with matching names to the set, globs with the '-'
prefix remove checks with matching names from the
set of enabled checks.
This option's value is appended to the value read
from a .clang-tidy file, if any.
-config=<string> - Specifies a configuration in YAML/JSON format:
-config="{Checks: '*', CheckOptions: [{key: x, value: y}]}"
When the value is empty, clang-tidy will attempt to find
a file named .clang-tidy for each source file in its parent
directories.
-dump-config - Dumps configuration in the YAML format to stdout. This option
should be used along with a file name (and '--' if the file is
outside of a project with configured compilation database). The
configuration used for this file will be printed.
-enable-check-profile - Enable per-check timing profiles, and print a report to stderr.
-export-fixes=<filename> - YAML file to store suggested fixes in. The
stored fixes can be applied to the input source
code with clang-apply-replacements.
-extra-arg=<string> - Additional argument to append to the compiler command line
-extra-arg-before=<string> - Additional argument to prepend to the compiler command line
-fix - Apply suggested fixes. Without -fix-errors
clang-tidy will bail out if any compilation
errors were found.
-fix-errors - Apply suggested fixes even if compilation errors
were found. If compiler errors have attached
fix-its, clang-tidy will apply them as well.
-header-filter=<string> - Regular expression matching the names of the
headers to output diagnostics from. Diagnostics
from the main file of each translation unit are
always displayed.
Can be used together with -line-filter.
This option overrides the value read from a
.clang-tidy file.
-line-filter=<string> - List of files with line ranges to filter the
warnings. Can be used together with
-header-filter. The format of the list is a JSON
array of objects:
[
{"name":"file1.cpp","lines":[[1,3],[5,7]]},
{"name":"file2.h"}
]
-list-checks - List all enabled checks and exit. Use with
-checks=* to list all available checks.
-p=<string> - Build path
-system-headers - Display the errors from system headers.
-warnings-as-errors=<string> - Upgrades warnings to errors. Same format as '-checks'.
-analyze-temporary-dtors -
Enable temporary destructor-aware analysis in
clang-analyzer- checks.
This option overrides the value read from a
.clang-tidy file.
-checks=<string> -
Comma-separated list of globs with optional '-'
prefix. Globs are processed in order of
appearance in the list. Globs without '-'
prefix add checks with matching names to the
set, globs with the '-' prefix remove checks
with matching names from the set of enabled
checks. This option's value is appended to the
value of the 'Checks' option in .clang-tidy
file, if any.
-config=<string> -
Specifies a configuration in YAML/JSON format:
-config="{Checks: '*',
CheckOptions: [{key: x,
value: y}]}"
When the value is empty, clang-tidy will
attempt to find a file named .clang-tidy for
each source file in its parent directories.
-dump-config -
Dumps configuration in the YAML format to
stdout. This option can be used along with a
file name (and '--' if the file is outside of a
project with configured compilation database).
The configuration used for this file will be
printed.
Use along with -checks=* to include
configuration of all checks.
-enable-check-profile -
Enable per-check timing profiles, and print a
report to stderr.
-export-fixes=<filename> -
YAML file to store suggested fixes in. The
stored fixes can be applied to the input sorce
code with clang-apply-replacements.
-extra-arg=<string> - Additional argument to append to the compiler command line
-extra-arg-before=<string> - Additional argument to prepend to the compiler command line
-fix -
Apply suggested fixes. Without -fix-errors
clang-tidy will bail out if any compilation
errors were found.
-fix-errors -
Apply suggested fixes even if compilation
errors were found. If compiler errors have
attached fix-its, clang-tidy will apply them as
well.
-header-filter=<string> -
Regular expression matching the names of the
headers to output diagnostics from. Diagnostics
from the main file of each translation unit are
always displayed.
Can be used together with -line-filter.
This option overrides the 'HeaderFilter' option
in .clang-tidy file, if any.
-line-filter=<string> -
List of files with line ranges to filter the
warnings. Can be used together with
-header-filter. The format of the list is a
JSON array of objects:
[
{"name":"file1.cpp","lines":[[1,3],[5,7]]},
{"name":"file2.h"}
]
-list-checks -
List all enabled checks and exit. Use with
-checks=* to list all available checks.
-p=<string> - Build path
-system-headers - Display the errors from system headers.
-warnings-as-errors=<string> -
Upgrades warnings to errors. Same format as
'-checks'.
This option's value is appended to the value of
the 'WarningsAsErrors' option in .clang-tidy
file, if any.
-p <build-path> is used to read a compile command database.
@ -173,6 +196,7 @@ An overview of all the command-line options:
automatically removed, but the rest of a relative path must be a
suffix of a path in the compile command database.
Configuration files:
clang-tidy attempts to read configuration for each source file from a
.clang-tidy file located in the closest parent directory of the source
@ -183,10 +207,11 @@ An overview of all the command-line options:
$ clang-tidy -dump-config - --
---
Checks: '-*,some-check'
WarningsAsErrors: ''
HeaderFilterRegex: ''
AnalyzeTemporaryDtors: false
User: user
CheckOptions:
CheckOptions:
- key: some-check.SomeOption
value: 'some value'
...