[clang] dd870f6 - Fix warning about unused std::unique result, erase shifted elements

Reid Kleckner via cfe-commits cfe-commits at lists.llvm.org
Thu Nov 7 10:39:36 PST 2019


Author: Reid Kleckner
Date: 2019-11-07T10:39:29-08:00
New Revision: dd870f6929ee0b1dfb5fd000c7b826a1bd2d2571

URL: https://github.com/llvm/llvm-project/commit/dd870f6929ee0b1dfb5fd000c7b826a1bd2d2571
DIFF: https://github.com/llvm/llvm-project/commit/dd870f6929ee0b1dfb5fd000c7b826a1bd2d2571.diff

LOG: Fix warning about unused std::unique result, erase shifted elements

This is actually a functional change. I haven't added any new test
coverage. I'm just trying to fix the warning and hoping for the best.

Added: 
    

Modified: 
    clang/include/clang/Serialization/ContinuousRangeMap.h

Removed: 
    


################################################################################
diff  --git a/clang/include/clang/Serialization/ContinuousRangeMap.h b/clang/include/clang/Serialization/ContinuousRangeMap.h
index 0c05537dd108..c2665c097416 100644
--- a/clang/include/clang/Serialization/ContinuousRangeMap.h
+++ b/clang/include/clang/Serialization/ContinuousRangeMap.h
@@ -118,14 +118,17 @@ class ContinuousRangeMap {
 
     ~Builder() {
       llvm::sort(Self.Rep, Compare());
-      std::unique(Self.Rep.begin(), Self.Rep.end(),
-                  [](const_reference A, const_reference B) {
-        // FIXME: we should not allow any duplicate keys, but there are a lot of
-        // duplicate 0 -> 0 mappings to remove first.
-        assert((A == B || A.first != B.first) &&
-               "ContinuousRangeMap::Builder given non-unique keys");
-        return A == B;
-      });
+      Self.Rep.erase(
+          std::unique(
+              Self.Rep.begin(), Self.Rep.end(),
+              [](const_reference A, const_reference B) {
+                // FIXME: we should not allow any duplicate keys, but there are
+                // a lot of duplicate 0 -> 0 mappings to remove first.
+                assert((A == B || A.first != B.first) &&
+                       "ContinuousRangeMap::Builder given non-unique keys");
+                return A == B;
+              }),
+          Self.Rep.end());
     }
 
     void insert(const value_type &Val) {


        


More information about the cfe-commits mailing list