[llvm-commits] CVS: llvm/lib/VMCore/PassManagerT.h

Chris Lattner lattner at cs.uiuc.edu
Thu Feb 13 23:35:03 PST 2003


Changes in directory llvm/lib/VMCore:

PassManagerT.h updated: 1.35 -> 1.36

---
Log message:

Fix a misunderstanding of the standard associative containers



---
Diffs of the changes:

Index: llvm/lib/VMCore/PassManagerT.h
diff -u llvm/lib/VMCore/PassManagerT.h:1.35 llvm/lib/VMCore/PassManagerT.h:1.36
--- llvm/lib/VMCore/PassManagerT.h:1.35	Tue Oct 29 17:05:17 2002
+++ llvm/lib/VMCore/PassManagerT.h	Thu Feb 13 23:34:36 2003
@@ -261,13 +261,8 @@
             ++I; // This analysis is preserved, leave it in the available set...
           else {
             if (!dynamic_cast<ImmutablePass*>(I->second)) {
-#if MAP_DOESNT_HAVE_BROKEN_ERASE_MEMBER
-              I = CurrentAnalyses.erase(I);   // Analysis not preserved!
-#else
-              // GCC 2.95.3 STL doesn't have correct erase member!
-              CurrentAnalyses.erase(I);
-              I = CurrentAnalyses.begin();
-#endif
+              std::map<AnalysisID, Pass*>::iterator J = I++;
+              CurrentAnalyses.erase(J);   // Analysis not preserved!
             } else {
               ++I;
             }





More information about the llvm-commits mailing list