return static_cast<const Stmt *>(getData1());
}
- const AnalysisContext *getCalleeContext() const {
- return static_cast<const AnalysisContext *>(getData2());
+ AnalysisContext *getCalleeContext() const {
+ return const_cast<AnalysisContext *>(
+ static_cast<const AnalysisContext *>(getData2()));
}
static bool classof(const ProgramPoint *Location) {
const Stmt *CE;
// The AnalysisContext of the callee.
- const AnalysisContext *CalleeCtx;
+ AnalysisContext *CalleeCtx;
// The parent block of the CallExpr.
const CFGBlock *Block;
public:
GRCallEnterNodeBuilder(GRCoreEngine &eng, const ExplodedNode *pred,
- const Stmt *s, const AnalysisContext *callee,
+ const Stmt *s, AnalysisContext *callee,
const CFGBlock *blk, unsigned idx)
: Eng(eng), Pred(pred), CE(s), CalleeCtx(callee), Block(blk), Index(idx) {}
const Stmt *getCallExpr() const { return CE; }
- const AnalysisContext *getCalleeContext() const { return CalleeCtx; }
+ AnalysisContext *getCalleeContext() const { return CalleeCtx; }
const CFGBlock *getBlock() const { return Block; }
void GRExprEngine::ProcessCallEnter(GRCallEnterNodeBuilder &B) {
const StackFrameContext *LocCtx
- = AMgr.getStackFrame(const_cast<AnalysisContext *>(B.getCalleeContext()),
+ = AMgr.getStackFrame(B.getCalleeContext(),
B.getLocationContext(),
B.getCallExpr(),
B.getBlock(),