diff options
author | Zhongxing Xu <xuzhongxing@gmail.com> | 2009-08-29 02:11:01 +0000 |
---|---|---|
committer | Zhongxing Xu <xuzhongxing@gmail.com> | 2009-08-29 02:11:01 +0000 |
commit | 9a5bca34ca09d3a88c2ccb4f53b27cf99de4f182 (patch) | |
tree | 6c970cf343368cccd9e6ca4a278fbe814597e72f /lib/Analysis/GRExprEngine.cpp | |
parent | 8c57a66a2aa59939a902ffa8c4ad0ddd5b949a21 (diff) |
Refactor undefined argument checking into a Checker.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80417 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/GRExprEngine.cpp')
-rw-r--r-- | lib/Analysis/GRExprEngine.cpp | 25 |
1 files changed, 1 insertions, 24 deletions
diff --git a/lib/Analysis/GRExprEngine.cpp b/lib/Analysis/GRExprEngine.cpp index de0209a3a1..d66dfffd31 100644 --- a/lib/Analysis/GRExprEngine.cpp +++ b/lib/Analysis/GRExprEngine.cpp @@ -1626,30 +1626,7 @@ void GRExprEngine::VisitCallRec(CallExpr* CE, ExplodedNode* Pred, default: break; } - } - - // Check any arguments passed-by-value against being undefined. - - bool badArg = false; - - for (CallExpr::arg_iterator I = CE->arg_begin(), E = CE->arg_end(); - I != E; ++I) { - - if (GetState(*DI)->getSVal(*I).isUndef()) { - ExplodedNode* N = Builder->generateNode(CE, GetState(*DI), *DI); - - if (N) { - N->markAsSink(); - UndefArgs[N] = *I; - } - - badArg = true; - break; - } - } - - if (badArg) - continue; + } // Dispatch to the plug-in transfer function. |