[cfe-commits] r164541 - /cfe/trunk/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp

Anna Zaks ganna at apple.com
Mon Sep 24 10:43:41 PDT 2012


Author: zaks
Date: Mon Sep 24 12:43:41 2012
New Revision: 164541

URL: http://llvm.org/viewvc/llvm-project?rev=164541&view=rev
Log:
[analyzer]Prevent infinite recursion(assume->checker:evalAssume->assume)

(Unfortunately, I do not have a good reduced test case for this.)

Modified:
    cfe/trunk/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp

Modified: cfe/trunk/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp?rev=164541&r1=164540&r2=164541&view=diff
==============================================================================
--- cfe/trunk/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp (original)
+++ cfe/trunk/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp Mon Sep 24 12:43:41 2012
@@ -115,7 +115,9 @@
                                                NonLoc cond,
                                                bool assumption) {
   state = assumeAux(state, cond, assumption);
-  return SU.processAssume(state, cond, assumption);
+  if (NotifyAssumeClients)
+    return SU.processAssume(state, cond, assumption);
+  return state;
 }
 
 static BinaryOperator::Opcode NegateComparison(BinaryOperator::Opcode op) {





More information about the cfe-commits mailing list