Make SetVector's remove indicate whether it actually removed something.
authorDan Gohman <gohman@apple.com>
Wed, 22 Sep 2010 23:20:04 +0000 (23:20 +0000)
committerDan Gohman <gohman@apple.com>
Wed, 22 Sep 2010 23:20:04 +0000 (23:20 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114612 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ADT/SetVector.h

index bf8286c1d840618d3c06a0eb21a4f0456123824a..abe20676d54d88543e6c64bd62384292870822d3 100644 (file)
@@ -114,13 +114,15 @@ public:
   }
 
   /// @brief Remove an item from the set vector.
-  void remove(const value_type& X) {
+  bool remove(const value_type& X) {
     if (set_.erase(X)) {
       typename vector_type::iterator I =
         std::find(vector_.begin(), vector_.end(), X);
       assert(I != vector_.end() && "Corrupted SetVector instances!");
       vector_.erase(I);
+      return true;
     }
+    return false;
   }