| Index: tools/clang/plugins/FindBadConstructsConsumer.h
|
| diff --git a/tools/clang/plugins/FindBadConstructsConsumer.h b/tools/clang/plugins/FindBadConstructsConsumer.h
|
| index 8f8fc87046630911ac93ae59995da6d5c8ca8a68..fb8d1d6c69226ca6e8c1222a9bc7c55e8516f656 100644
|
| --- a/tools/clang/plugins/FindBadConstructsConsumer.h
|
| +++ b/tools/clang/plugins/FindBadConstructsConsumer.h
|
| @@ -20,6 +20,8 @@
|
| #ifndef TOOLS_CLANG_PLUGINS_FINDBADCONSTRUCTSCONSUMER_H_
|
| #define TOOLS_CLANG_PLUGINS_FINDBADCONSTRUCTSCONSUMER_H_
|
|
|
| +#include <memory>
|
| +
|
| #include "clang/AST/AST.h"
|
| #include "clang/AST/ASTConsumer.h"
|
| #include "clang/AST/Attr.h"
|
| @@ -29,6 +31,7 @@
|
| #include "clang/Basic/SourceManager.h"
|
| #include "clang/Basic/SourceLocation.h"
|
|
|
| +#include "CheckIPCVisitor.h"
|
| #include "ChromeClassTester.h"
|
| #include "Options.h"
|
| #include "SuppressibleDiagnosticBuilder.h"
|
| @@ -43,8 +46,14 @@ class FindBadConstructsConsumer
|
| FindBadConstructsConsumer(clang::CompilerInstance& instance,
|
| const Options& options);
|
|
|
| + void Traverse(clang::ASTContext& context);
|
| +
|
| // RecursiveASTVisitor:
|
| + bool shouldVisitTemplateInstantiations() const;
|
| + bool TraverseDecl(clang::Decl* decl);
|
| bool VisitDecl(clang::Decl* decl);
|
| + bool VisitTemplateSpecializationType(clang::TemplateSpecializationType* spec);
|
| + bool VisitCallExpr(clang::CallExpr* call_expr);
|
|
|
| // ChromeClassTester overrides:
|
| void CheckChromeClass(clang::SourceLocation record_location,
|
| @@ -110,6 +119,8 @@ class FindBadConstructsConsumer
|
| unsigned diag_note_implicit_dtor_;
|
| unsigned diag_note_public_dtor_;
|
| unsigned diag_note_protected_non_virtual_dtor_;
|
| +
|
| + std::unique_ptr<CheckIPCVisitor> ipc_visitor_;
|
| };
|
|
|
| } // namespace chrome_checker
|
|
|