Skip to content

Commit

Permalink
[Analyzer] Mark constant member functions const in CheckerManager
Browse files Browse the repository at this point in the history
Most of the getter functions (and a reporter function) in
`CheckerManager` are constant but not marked as `const`. This prevents
functions having only a constant reference to `CheckerManager` using
these member functions. This patch fixes this issue.

Differential Revision: https://reviews.llvm.org/D75839
  • Loading branch information
Adam Balogh committed Mar 9, 2020
1 parent b4c3a76 commit 57f70d1
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 6 deletions.
8 changes: 4 additions & 4 deletions clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
Expand Up @@ -140,14 +140,14 @@ class CheckerManager {
void finishedCheckerRegistration();

const LangOptions &getLangOpts() const { return LangOpts; }
AnalyzerOptions &getAnalyzerOptions() { return AOptions; }
ASTContext &getASTContext() { return Context; }
AnalyzerOptions &getAnalyzerOptions() const { return AOptions; }
ASTContext &getASTContext() const { return Context; }

/// Emits an error through a DiagnosticsEngine about an invalid user supplied
/// checker option value.
void reportInvalidCheckerOptionValue(const CheckerBase *C,
StringRef OptionName,
StringRef ExpectedValueDesc);
StringRef ExpectedValueDesc) const;

using CheckerRef = CheckerBase *;
using CheckerTag = const void *;
Expand Down Expand Up @@ -620,7 +620,7 @@ class CheckerManager {
/// Returns the checkers that have registered for callbacks of the
/// given \p Kind.
const std::vector<CheckObjCMessageFunc> &
getObjCMessageCheckers(ObjCMessageVisitKind Kind);
getObjCMessageCheckers(ObjCMessageVisitKind Kind) const;

std::vector<CheckObjCMessageFunc> PreObjCMessageCheckers;
std::vector<CheckObjCMessageFunc> PostObjCMessageCheckers;
Expand Down
5 changes: 3 additions & 2 deletions clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
Expand Up @@ -61,7 +61,8 @@ void CheckerManager::finishedCheckerRegistration() {
}

void CheckerManager::reportInvalidCheckerOptionValue(
const CheckerBase *C, StringRef OptionName, StringRef ExpectedValueDesc) {
const CheckerBase *C, StringRef OptionName,
StringRef ExpectedValueDesc) const {

Context.getDiagnostics()
.Report(diag::err_analyzer_checker_option_invalid_input)
Expand Down Expand Up @@ -249,7 +250,7 @@ void CheckerManager::runCheckersForObjCMessage(ObjCMessageVisitKind visitKind,
}

const std::vector<CheckerManager::CheckObjCMessageFunc> &
CheckerManager::getObjCMessageCheckers(ObjCMessageVisitKind Kind) {
CheckerManager::getObjCMessageCheckers(ObjCMessageVisitKind Kind) const {
switch (Kind) {
case ObjCMessageVisitKind::Pre:
return PreObjCMessageCheckers;
Expand Down

0 comments on commit 57f70d1

Please sign in to comment.