Lines Matching full:clang

25 #include "clang/AST/AST.h"
26 #include "clang/AST/ASTConsumer.h"
27 #include "clang/AST/Attr.h"
28 #include "clang/AST/CXXInheritance.h"
29 #include "clang/AST/RecursiveASTVisitor.h"
30 #include "clang/AST/TypeLoc.h"
31 #include "clang/Basic/SourceManager.h"
32 #include "clang/Basic/SourceLocation.h"
43 : public clang::RecursiveASTVisitor<FindBadConstructsConsumer>,
46 FindBadConstructsConsumer(clang::CompilerInstance& instance,
49 void Traverse(clang::ASTContext& context);
52 bool TraverseDecl(clang::Decl* decl);
53 bool VisitEnumDecl(clang::EnumDecl* enum_decl);
54 bool VisitTagDecl(clang::TagDecl* tag_decl);
55 bool VisitVarDecl(clang::VarDecl* var_decl);
56 bool VisitTemplateSpecializationType(clang::TemplateSpecializationType* spec);
57 bool VisitCallExpr(clang::CallExpr* call_expr);
61 clang::SourceLocation record_location,
62 clang::CXXRecordDecl* record) override;
68 void CheckCtorDtorWeight(clang::SourceLocation record_location,
69 clang::CXXRecordDecl* record);
77 clang::SourceLocation loc,
80 void CheckVirtualMethods(clang::SourceLocation record_location,
81 clang::CXXRecordDecl* record,
83 void CheckVirtualSpecifiers(const clang::CXXMethodDecl* method);
84 void CheckVirtualBodies(const clang::CXXMethodDecl* method);
86 void CountType(const clang::Type* type,
92 const clang::CXXRecordDecl* record,
93 clang::SourceLocation& loc);
94 bool IsRefCounted(const clang::CXXBaseSpecifier* base,
95 clang::CXXBasePath& path);
96 static bool HasPublicDtorCallback(const clang::CXXBaseSpecifier* base,
97 clang::CXXBasePath& path,
99 void PrintInheritanceChain(const clang::CXXBasePath& path);
101 void CheckRefCountedDtors(clang::SourceLocation record_location,
102 clang::CXXRecordDecl* record);
104 void CheckWeakPtrFactoryMembers(clang::SourceLocation record_location,
105 clang::CXXRecordDecl* record);
106 void CheckEnumMaxValue(clang::EnumDecl* decl);
107 void CheckVarDecl(clang::VarDecl* decl);
109 void ParseFunctionTemplates(clang::TranslationUnitDecl* decl);