[libcxx-commits] [libcxx] [libc++] Add tests for the ABI break introduced by switching to _LIBCPP_COMPRESSED_PAIR (PR #154559)

Louis Dionne via libcxx-commits libcxx-commits at lists.llvm.org
Wed Aug 20 09:15:32 PDT 2025


================
@@ -66,10 +66,36 @@ class final_small_iter_allocator final {
   friend bool operator!=(final_small_iter_allocator, final_small_iter_allocator) { return false; }
 };
 
+struct allocator_base {};
+
+template <class T>
+struct common_base_allocator : allocator_base {
+  using value_type      = T;
+
+  common_base_allocator() TEST_NOEXCEPT {}
+
+  template <class U>
+  common_base_allocator(common_base_allocator<U>) TEST_NOEXCEPT {}
+
+  T* allocate(std::size_t n);
+  void deallocate(T* p, std::size_t);
+
+  friend bool operator==(common_base_allocator, common_base_allocator) { return true; }
+  friend bool operator!=(common_base_allocator, common_base_allocator) { return false; }
----------------
ldionne wrote:

Do you need these to be defined? Applies throughout.

https://github.com/llvm/llvm-project/pull/154559


More information about the libcxx-commits mailing list