Index: tools/clang/plugins/FindBadConstructsConsumer.cpp |
diff --git a/tools/clang/plugins/FindBadConstructsConsumer.cpp b/tools/clang/plugins/FindBadConstructsConsumer.cpp |
index c79a764eb953be319cb5e83fe766cee2bbaa8a3c..ba8883c7ee810378a039e32a5629a57a4829846d 100644 |
--- a/tools/clang/plugins/FindBadConstructsConsumer.cpp |
+++ b/tools/clang/plugins/FindBadConstructsConsumer.cpp |
@@ -134,6 +134,10 @@ FindBadConstructsConsumer::FindBadConstructsConsumer(CompilerInstance& instance, |
diagnostic().getCustomDiagID(DiagnosticsEngine::Note, kNotePublicDtor); |
diag_note_protected_non_virtual_dtor_ = diagnostic().getCustomDiagID( |
DiagnosticsEngine::Note, kNoteProtectedNonVirtualDtor); |
+ |
+ if (options.check_ipc) { |
+ ipc_checker_.reset(new CheckIPCVisitor(instance)); |
+ } |
} |
bool FindBadConstructsConsumer::VisitDecl(clang::Decl* decl) { |
@@ -218,6 +222,13 @@ void FindBadConstructsConsumer::CheckChromeEnum(SourceLocation enum_location, |
} |
} |
+void FindBadConstructsConsumer::HandleTranslationUnit(ASTContext& context) { |
+ ChromeClassTester::HandleTranslationUnit(context); |
+ if (auto checker = ipc_checker()) { |
+ checker->Visit(context); |
+ } |
+} |
+ |
void FindBadConstructsConsumer::CheckCtorDtorWeight( |
SourceLocation record_location, |
CXXRecordDecl* record) { |