std::shared_ptr<T>::unique() is deprecated in C++17 and removed in C++20.
Change to checking for use_count() >/== 1.
PiperOrigin-RevId: 510125744
Change-Id: I572cca18c3f827f5d3eefb2ec19a1a014c0090ae
diff --git a/absl/functional/any_invocable_test.cc b/absl/functional/any_invocable_test.cc
index 1ed8540..10a4dee 100644
--- a/absl/functional/any_invocable_test.cc
+++ b/absl/functional/any_invocable_test.cc
@@ -1431,14 +1431,14 @@
auto refs = std::make_shared<std::nullptr_t>();
{
AnyInvType fun([refs](auto&&...) noexcept { return 0; });
- EXPECT_FALSE(refs.unique());
+ EXPECT_GT(refs.use_count(), 1);
std::move(fun)(7, 8, 9);
// Ensure destructor hasn't run even if rref-qualified
- EXPECT_FALSE(refs.unique());
+ EXPECT_GT(refs.use_count(), 1);
}
- EXPECT_TRUE(refs.unique());
+ EXPECT_EQ(refs.use_count(), 1);
}
// NOTE: This test suite originally attempted to enumerate all possible