diff options
| author | Alexander Kornienko <alexfh@google.com> | 2014-09-24 18:36:03 +0000 |
|---|---|---|
| committer | Alexander Kornienko <alexfh@google.com> | 2014-09-24 18:36:03 +0000 |
| commit | e995154ac2f15f58d701f2251da417aac4da9d3c (patch) | |
| tree | 6aaf8242d5c80cb85a2fc449da3c93a89853f8c4 /clang-tools-extra/clang-tidy/tool | |
| parent | 7827217131ffe946e2b44eb87b66cb13a36fb98d (diff) | |
| download | bcm5719-llvm-e995154ac2f15f58d701f2251da417aac4da9d3c.tar.gz bcm5719-llvm-e995154ac2f15f58d701f2251da417aac4da9d3c.zip | |
Provide user name in ClangTidyOptions.
Summary:
This adds the ClangTidyOptions::User field and fills it from the USER
or the USERNAME environment variable, if possible. The FileOptionsProvider now
takes "default" options instead of "fallback" options, as it now uses these when
an option is not set in the configuration file (one exception is the checks
list).
Reviewers: bkramer, klimek
Reviewed By: klimek
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D5440
llvm-svn: 218402
Diffstat (limited to 'clang-tools-extra/clang-tidy/tool')
| -rw-r--r-- | clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp b/clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp index f11cbeec628..a9b29f682ca 100644 --- a/clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp +++ b/clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp @@ -17,6 +17,7 @@ #include "../ClangTidy.h" #include "clang/Tooling/CommonOptionsParser.h" +#include "llvm/Support/Process.h" using namespace clang::ast_matchers; using namespace clang::driver; @@ -143,10 +144,14 @@ int clangTidyMain(int argc, const char **argv) { return 1; } - ClangTidyOptions FallbackOptions; - FallbackOptions.Checks = DefaultChecks; - FallbackOptions.HeaderFilterRegex = HeaderFilter; - FallbackOptions.AnalyzeTemporaryDtors = AnalyzeTemporaryDtors; + ClangTidyOptions DefaultOptions; + DefaultOptions.Checks = DefaultChecks; + DefaultOptions.HeaderFilterRegex = HeaderFilter; + DefaultOptions.AnalyzeTemporaryDtors = AnalyzeTemporaryDtors; + DefaultOptions.User = llvm::sys::Process::GetEnv("USER"); + // USERNAME is used on Windows. + if (!DefaultOptions.User) + DefaultOptions.User = llvm::sys::Process::GetEnv("USERNAME"); ClangTidyOptions OverrideOptions; if (Checks.getNumOccurrences() > 0) @@ -157,7 +162,7 @@ int clangTidyMain(int argc, const char **argv) { OverrideOptions.AnalyzeTemporaryDtors = AnalyzeTemporaryDtors; auto OptionsProvider = llvm::make_unique<FileOptionsProvider>( - GlobalOptions, FallbackOptions, OverrideOptions); + GlobalOptions, DefaultOptions, OverrideOptions); std::string FileName = OptionsParser.getSourcePathList().front(); ClangTidyOptions EffectiveOptions = OptionsProvider->getOptions(FileName); |

