From 24c32c7de239a2d4c81f67d7eb241c0c4aa38a63 Mon Sep 17 00:00:00 2001 From: Evan Brown Date: Tue, 18 Oct 2022 11:45:09 -0700 Subject: Use btree iterator subtraction instead of std::distance in erase_range() and count(). PiperOrigin-RevId: 481979737 Change-Id: I69f53665b0463a7d8d80f2a3feedfdd95d32b012 --- absl/container/internal/btree.h | 2 +- absl/container/internal/btree_container.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/absl/container/internal/btree.h b/absl/container/internal/btree.h index 9c509073..5000d1c3 100644 --- a/absl/container/internal/btree.h +++ b/absl/container/internal/btree.h @@ -2444,7 +2444,7 @@ auto btree

::rebalance_after_delete(iterator iter) -> iterator { template auto btree

::erase_range(iterator begin, iterator end) -> std::pair { - size_type count = static_cast(std::distance(begin, end)); + size_type count = static_cast(end - begin); assert(count >= 0); if (count == 0) { diff --git a/absl/container/internal/btree_container.h b/absl/container/internal/btree_container.h index fc2f740a..3e259861 100644 --- a/absl/container/internal/btree_container.h +++ b/absl/container/internal/btree_container.h @@ -107,7 +107,7 @@ class btree_container { template size_type count(const key_arg &key) const { auto equal_range = this->equal_range(key); - return std::distance(equal_range.first, equal_range.second); + return equal_range.second - equal_range.first; } template iterator find(const key_arg &key) { -- cgit v1.2.3