summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang/include/clang/Serialization/ContinuousRangeMap.h19
1 files changed, 11 insertions, 8 deletions
diff --git a/clang/include/clang/Serialization/ContinuousRangeMap.h b/clang/include/clang/Serialization/ContinuousRangeMap.h
index 0c05537dd10..c2665c09741 100644
--- a/clang/include/clang/Serialization/ContinuousRangeMap.h
+++ b/clang/include/clang/Serialization/ContinuousRangeMap.h
@@ -118,14 +118,17 @@ public:
~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) {
OpenPOWER on IntegriCloud