Simplify getRuntimeDefinition() back to taking no arguments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164363 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/clang/Analysis/AnalysisContext.h b/include/clang/Analysis/AnalysisContext.h
index 0185e8b..02b8530 100644
--- a/include/clang/Analysis/AnalysisContext.h
+++ b/include/clang/Analysis/AnalysisContext.h
@@ -104,6 +104,12 @@
ASTContext &getASTContext() const { return D->getASTContext(); }
const Decl *getDecl() const { return D; }
+ /// Return the AnalysisDeclContextManager (if any) that created
+ /// this AnalysisDeclContext.
+ AnalysisDeclContextManager *getManager() const {
+ return Manager;
+ }
+
/// Return the build options used to construct the CFG.
CFG::BuildOptions &getCFGBuildOptions() {
return cfgBuildOptions;
diff --git a/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h b/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
index 1b9a33e..bd05116 100644
--- a/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
+++ b/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
@@ -192,8 +192,7 @@
/// \brief Returns the definition of the function or method that will be
/// called.
- virtual RuntimeDefinition
- getRuntimeDefinition(AnalysisDeclContextManager &M) const = 0;
+ virtual RuntimeDefinition getRuntimeDefinition() const = 0;
/// \brief Returns the expression whose value will be the result of this call.
/// May be null.
@@ -366,13 +365,14 @@
return cast<FunctionDecl>(CallEvent::getDecl());
}
- virtual RuntimeDefinition
- getRuntimeDefinition(AnalysisDeclContextManager &M) const {
+ virtual RuntimeDefinition getRuntimeDefinition() const {
const FunctionDecl *FD = getDecl();
// Note that the AnalysisDeclContext will have the FunctionDecl with
// the definition (if one exists).
if (FD) {
- AnalysisDeclContext *AD = M.getContext(FD);
+ AnalysisDeclContext *AD =
+ getLocationContext()->getAnalysisDeclContext()->
+ getManager()->getContext(FD);
if (AD->getBody())
return RuntimeDefinition(AD->getDecl());
}
@@ -476,8 +476,7 @@
return BR->getDecl();
}
- virtual RuntimeDefinition
- getRuntimeDefinition(AnalysisDeclContextManager &M) const {
+ virtual RuntimeDefinition getRuntimeDefinition() const {
return RuntimeDefinition(getBlockDecl());
}
@@ -519,8 +518,7 @@
virtual const FunctionDecl *getDecl() const;
- virtual RuntimeDefinition
- getRuntimeDefinition(AnalysisDeclContextManager &M) const;
+ virtual RuntimeDefinition getRuntimeDefinition() const;
virtual void getInitialStackFrameContents(const StackFrameContext *CalleeCtx,
BindingsTy &Bindings) const;
@@ -562,8 +560,7 @@
virtual const Expr *getCXXThisExpr() const;
- virtual RuntimeDefinition
- getRuntimeDefinition(AnalysisDeclContextManager &M) const;
+ virtual RuntimeDefinition getRuntimeDefinition() const;
virtual Kind getKind() const { return CE_CXXMember; }
@@ -643,8 +640,7 @@
virtual SourceRange getSourceRange() const { return Location; }
virtual unsigned getNumArgs() const { return 0; }
- virtual RuntimeDefinition
- getRuntimeDefinition(AnalysisDeclContextManager &M) const;
+ virtual RuntimeDefinition getRuntimeDefinition() const;
/// \brief Returns the value of the implicit 'this' object.
virtual SVal getCXXThisVal() const;
@@ -850,8 +846,7 @@
llvm_unreachable("Unknown message kind");
}
- virtual RuntimeDefinition
- getRuntimeDefinition(AnalysisDeclContextManager &M) const;
+ virtual RuntimeDefinition getRuntimeDefinition() const;
virtual void getInitialStackFrameContents(const StackFrameContext *CalleeCtx,
BindingsTy &Bindings) const;