diff options
author | Evan Brown <ezb@google.com> | 2022-11-21 08:35:02 -0800 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2022-11-21 08:35:39 -0800 |
commit | d081b629b7c201e701911cfb4e0c99735c21c331 (patch) | |
tree | b4671ba8aa849b9a0b0573c36965fa1fe4c96552 /absl/container/btree_test.cc | |
parent | 76b7618369826ba175beed1735b6b072f5be15d8 (diff) | |
download | abseil-d081b629b7c201e701911cfb4e0c99735c21c331.tar.gz abseil-d081b629b7c201e701911cfb4e0c99735c21c331.tar.bz2 abseil-d081b629b7c201e701911cfb4e0c99735c21c331.zip |
Improve error messages when comparing btree iterators when generations are enabled.
- Add assertions that the iterators haven't been invalidated.
- Also refactor some generation-related code to define the functions inside ABSL_BTREE_ENABLE_GENERATIONS ifdef/else branches.
PiperOrigin-RevId: 489988637
Change-Id: I34d32ed2e27cf89f7f8bb5d9c1f6770bb40b8794
Diffstat (limited to 'absl/container/btree_test.cc')
-rw-r--r-- | absl/container/btree_test.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/absl/container/btree_test.cc b/absl/container/btree_test.cc index 28dda8a6..cc763b29 100644 --- a/absl/container/btree_test.cc +++ b/absl/container/btree_test.cc @@ -3167,6 +3167,14 @@ TEST(Btree, InvalidIteratorUse) { set.erase(1); EXPECT_DEATH(*it, "invalidated iterator"); } + { + absl::btree_set<int> set; + for (int i = 0; i < 10; ++i) set.insert(i); + auto it = set.insert(20).first; + set.insert(30); + EXPECT_DEATH(void(it == set.begin()), "invalidated iterator"); + EXPECT_DEATH(void(set.begin() == it), "invalidated iterator"); + } } #endif |