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.
This commit is contained in:
Reid Kleckner 2019-11-07 10:37:04 -08:00
parent 6e655e58bc
commit dd870f6929
1 changed files with 11 additions and 8 deletions

View File

@ -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) {