/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Utilities/StaticAnalyzers/src/MutableMemberModificationChecker.h
30 строк
1 KB
Ivan Razumov
Simplify checkAssignToMutable function
13 дек 2024, 18:45
13 дек 2024, 18:45
665866d
Код
Авторство
О чём код?
//== MutableMemberChecker.h - Checks for mutable members --------------*- C++ -*--==// // // by Thomas Hauth [ Thomas.Hauth@cern.ch ] // //===----------------------------------------------------------------------===// #ifndef Utilities_StaticAnalyzers_MutableMemberChecker_h #define Utilities_StaticAnalyzers_MutableMemberChecker_h #include <clang/StaticAnalyzer/Core/Checker.h> #include <clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h> #include <clang/StaticAnalyzer/Core/BugReporter/BugType.h> #include "FWCore/Utilities/interface/thread_safety_macros.h" #include "CmsException.h" #include "CmsSupport.h" namespace clangcms { class MutableMemberModificationChecker : public clang::ento::Checker<clang::ento::check::PreStmt<clang::MemberExpr>> { public: CMS_SA_ALLOW mutable std::unique_ptr<clang::ento::BugType> BT; void checkPreStmt(const clang::MemberExpr *ME, clang::ento::CheckerContext &C) const; private: CmsException m_exception; bool checkAssignToMutable(const clang::MemberExpr *ME, clang::ento::CheckerContext &C) const; bool checkCallNonConstOfMutable(const clang::MemberExpr *ME, clang::ento::CheckerContext &C) const; }; } // namespace clangcms #endif