[libcxx-commits] [libcxx] [libc++] Fix ambiguity when using std::scoped_allocator constructor (PR #80261)

via libcxx-commits libcxx-commits at lists.llvm.org
Thu Feb 1 01:35:44 PST 2024


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff 8e8c954a173e0e814de1207513f357e99dff2e85 62bf88bab77988ff9442034113d52968e6b85b51 -- libcxx/include/scoped_allocator libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp b/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp
index d8135c6e7a..526da0338a 100644
--- a/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp
+++ b/libcxx/test/std/utilities/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp
@@ -108,18 +108,18 @@ int main(int, char**)
             std::scoped_allocator_adaptor<A2<int>, A3<int>>(A2<int>(5), A3<int>(6))));
     }
     {
-        //  Test for LWG2782
-        static_assert(!std::is_convertible<A1<int>, A2<int>>::value, "");
-        static_assert(!std::is_convertible<
-             std::scoped_allocator_adaptor<A1<int>>,
-             std::scoped_allocator_adaptor<A2<int>>>::value, "");
+      //  Test for LWG2782
+      static_assert(!std::is_convertible<A1<int>, A2<int>>::value, "");
+      static_assert(
+          !std::is_convertible< std::scoped_allocator_adaptor<A1<int>>, std::scoped_allocator_adaptor<A2<int>>>::value,
+          "");
     }
     {
-        // Test construction from convertible-to-allocator types
-        typedef std::scoped_allocator_adaptor<A1<int>, A1<int>> A;
-        A a(A1<char>(4), A1<char>(5));
-        assert(a.outer_allocator() == A1<int>(4));
-        assert(a.inner_allocator() == A1<int>(5));
+      // Test construction from convertible-to-allocator types
+      typedef std::scoped_allocator_adaptor<A1<int>, A1<int>> A;
+      A a(A1<char>(4), A1<char>(5));
+      assert(a.outer_allocator() == A1<int>(4));
+      assert(a.inner_allocator() == A1<int>(5));
     }
 
   return 0;

``````````

</details>


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


More information about the libcxx-commits mailing list