File indexing completed on 2021-02-14 14:32:05
0001
0002
0003
0004
0005
0006
0007 #ifndef Utilities_StaticAnalyzers_MutableMemberChecker_h
0008 #define Utilities_StaticAnalyzers_MutableMemberChecker_h
0009
0010 #include <clang/StaticAnalyzer/Core/Checker.h>
0011 #include <clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h>
0012 #include <clang/StaticAnalyzer/Core/BugReporter/BugType.h>
0013 #include "FWCore/Utilities/interface/thread_safety_macros.h"
0014 #include "CmsException.h"
0015 #include "CmsSupport.h"
0016
0017 namespace clangcms {
0018 class MutableMemberChecker : public clang::ento::Checker<clang::ento::check::ASTDecl<clang::FieldDecl> > {
0019 CMS_SA_ALLOW mutable std::unique_ptr<clang::ento::BuiltinBug> BT;
0020
0021 public:
0022 void checkASTDecl(const clang::FieldDecl *D, clang::ento::AnalysisManager &Mgr, clang::ento::BugReporter &BR) const;
0023
0024 private:
0025 CmsException m_exception;
0026 };
0027 }
0028
0029 #endif