summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clang-tidy/readability
diff options
context:
space:
mode:
authorAlexander Kornienko <alexfh@google.com>2019-03-22 13:42:48 +0000
committerAlexander Kornienko <alexfh@google.com>2019-03-22 13:42:48 +0000
commitbbc89dcb29035ad450ac0981b8f51a6cfa2aa8ba (patch)
tree49ca020bccc697a6d96f54a88cc2b9601f79d1db /clang-tools-extra/clang-tidy/readability
parent64178fe5e9e1fe4f853079cb199dea6235adb36f (diff)
downloadbcm5719-llvm-bbc89dcb29035ad450ac0981b8f51a6cfa2aa8ba.tar.gz
bcm5719-llvm-bbc89dcb29035ad450ac0981b8f51a6cfa2aa8ba.zip
[clang-tidy] Expand modular headers for PPCallbacks
Summary: Add a way to expand modular headers for PPCallbacks. Checks can opt-in for this expansion by overriding the new registerPPCallbacks virtual method and registering their PPCallbacks in the preprocessor created for this specific purpose. Use module expansion in the readability-identifier-naming check Reviewers: gribozavr, usaxena95, sammccall Reviewed By: gribozavr Subscribers: nemanjai, mgorny, xazax.hun, kbarton, jdoerfert, cfe-commits Tags: #clang, #clang-tools-extra Differential Revision: https://reviews.llvm.org/D59528 llvm-svn: 356750
Diffstat (limited to 'clang-tools-extra/clang-tidy/readability')
-rw-r--r--clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp9
-rw-r--r--clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h3
2 files changed, 7 insertions, 5 deletions
diff --git a/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp b/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
index 56ece5c60a4..7e56fe16d9b 100644
--- a/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
+++ b/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
@@ -240,10 +240,11 @@ void IdentifierNamingCheck::registerMatchers(MatchFinder *Finder) {
Finder->addMatcher(nestedNameSpecifierLoc().bind("nestedNameLoc"), this);
}
-void IdentifierNamingCheck::registerPPCallbacks(CompilerInstance &Compiler) {
- Compiler.getPreprocessor().addPPCallbacks(
- llvm::make_unique<IdentifierNamingCheckPPCallbacks>(
- &Compiler.getPreprocessor(), this));
+void IdentifierNamingCheck::registerPPCallbacks(
+ const SourceManager &SM, Preprocessor *PP, Preprocessor *ModuleExpanderPP) {
+ ModuleExpanderPP->addPPCallbacks(
+ llvm::make_unique<IdentifierNamingCheckPPCallbacks>(ModuleExpanderPP,
+ this));
}
static bool matchesStyle(StringRef Name,
diff --git a/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h b/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
index 0023a6fa433..c0a312174c6 100644
--- a/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
+++ b/clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
@@ -38,7 +38,8 @@ public:
void storeOptions(ClangTidyOptions::OptionMap &Opts) override;
void registerMatchers(ast_matchers::MatchFinder *Finder) override;
void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
- void registerPPCallbacks(CompilerInstance &Compiler) override;
+ void registerPPCallbacks(const SourceManager &SM, Preprocessor *PP,
+ Preprocessor *ModuleExpanderPP) override;
void onEndOfTranslationUnit() override;
enum CaseType {
OpenPOWER on IntegriCloud