[libcxx-commits] [libcxx] e331bbb - [libc++] Add regression test for #67449 (#67590)

via libcxx-commits libcxx-commits at lists.llvm.org
Thu Sep 28 06:03:31 PDT 2023


Author: Louis Dionne
Date: 2023-09-28T09:03:27-04:00
New Revision: e331bbb3465f51f858a578fa9fa6449a1abbd4cd

URL: https://github.com/llvm/llvm-project/commit/e331bbb3465f51f858a578fa9fa6449a1abbd4cd
DIFF: https://github.com/llvm/llvm-project/commit/e331bbb3465f51f858a578fa9fa6449a1abbd4cd.diff

LOG: [libc++] Add regression test for #67449 (#67590)

Even though the underlying issue was fixed in #65177 when we made
std::pointer_traits SFINAE-friendly, it is worth adding a regression
test since it's so easy to do.

Added: 
    

Modified: 
    libcxx/test/std/utilities/memory/pointer.conversion/to_address.pass.cpp

Removed: 
    


################################################################################
diff  --git a/libcxx/test/std/utilities/memory/pointer.conversion/to_address.pass.cpp b/libcxx/test/std/utilities/memory/pointer.conversion/to_address.pass.cpp
index fea34ffe99de2bd..9ed0eeefcff829c 100644
--- a/libcxx/test/std/utilities/memory/pointer.conversion/to_address.pass.cpp
+++ b/libcxx/test/std/utilities/memory/pointer.conversion/to_address.pass.cpp
@@ -153,6 +153,14 @@ constexpr bool test() {
     assert(std::to_address(&p11) == &p11);
     ASSERT_SAME_TYPE(decltype(std::to_address(&p11)), int(**)());
 
+    // See https://github.com/llvm/llvm-project/issues/67449
+    {
+        struct S { };
+        S* p = nullptr;
+        assert(std::to_address<S>(p) == p);
+        ASSERT_SAME_TYPE(decltype(std::to_address<S>(p)), S*);
+    }
+
     return true;
 }
 


        


More information about the libcxx-commits mailing list