From: Daniel Dunbar Date: Thu, 23 Jul 2009 04:41:06 +0000 (+0000) Subject: Revert r76831, there are many Analyzer test failures on multiple platforms. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=36292550118ebdd5e0fe8e46df74f7202046d316;p=clang Revert r76831, there are many Analyzer test failures on multiple platforms. --- Reverse-merging r76831 into '.': U include/clang/Analysis/PathSensitive/GRExprEngine.h U lib/Analysis/GRExprEngine.cpp git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@76851 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Analysis/PathSensitive/GRExprEngine.h b/include/clang/Analysis/PathSensitive/GRExprEngine.h index 49c329a75c..534b595c0d 100644 --- a/include/clang/Analysis/PathSensitive/GRExprEngine.h +++ b/include/clang/Analysis/PathSensitive/GRExprEngine.h @@ -585,9 +585,6 @@ protected: ObjCMessageExpr::arg_iterator E, NodeTy* Pred, NodeSet& Dst); - void VisitObjCMessageExprDispatchCheckers(ObjCMessageExpr* ME, NodeTy* Pred, - NodeSet& Dst); - void VisitObjCMessageExprDispatchHelper(ObjCMessageExpr* ME, NodeTy* Pred, NodeSet& Dst); diff --git a/lib/Analysis/GRExprEngine.cpp b/lib/Analysis/GRExprEngine.cpp index dd2bda1331..eb31f84b0c 100644 --- a/lib/Analysis/GRExprEngine.cpp +++ b/lib/Analysis/GRExprEngine.cpp @@ -1855,12 +1855,12 @@ void GRExprEngine::VisitObjCMessageExprArgHelper(ObjCMessageExpr* ME, Visit(Receiver, Pred, Tmp); for (NodeSet::iterator NI = Tmp.begin(), NE = Tmp.end(); NI != NE; ++NI) - VisitObjCMessageExprDispatchCheckers(ME, *NI, Dst); + VisitObjCMessageExprDispatchHelper(ME, *NI, Dst); return; } - VisitObjCMessageExprDispatchCheckers(ME, Pred, Dst); + VisitObjCMessageExprDispatchHelper(ME, Pred, Dst); return; } @@ -1873,19 +1873,6 @@ void GRExprEngine::VisitObjCMessageExprArgHelper(ObjCMessageExpr* ME, VisitObjCMessageExprArgHelper(ME, AI, AE, *NI, Dst); } -void GRExprEngine::VisitObjCMessageExprDispatchCheckers(ObjCMessageExpr* ME, - NodeTy* Pred, - NodeSet& Dst) { - NodeSet Src; - Src.Add(Pred); - NodeSet DstTmp; - // Perform the previsit of the ObjCMessageExpr, storing the results in DstTmp. - CheckerVisit(ME, Src, DstTmp, true); - - for (NodeSet::iterator NI = DstTmp.begin(), NE = DstTmp.end(); NI != NE; ++NI) - VisitObjCMessageExprDispatchHelper(ME, *NI, Dst); -} - void GRExprEngine::VisitObjCMessageExprDispatchHelper(ObjCMessageExpr* ME, NodeTy* Pred, NodeSet& Dst) { @@ -2056,7 +2043,7 @@ void GRExprEngine::VisitObjCMessageExprDispatchHelper(ObjCMessageExpr* ME, return; } } - + // Check if we raise an exception. For now treat these as sinks. Eventually // we will want to handle exceptions properly.