[libcxx-commits] [libcxx] 7d5275e - [libc++][test] Silence MSVC deprecation warnings

Casey Carter via libcxx-commits libcxx-commits at lists.llvm.org
Fri Feb 24 21:13:50 PST 2023


Author: Casey Carter
Date: 2023-02-24T21:13:29-08:00
New Revision: 7d5275e0c0e4234ce1a75fd7a6dfae82ad8eb1c9

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

LOG: [libc++][test] Silence MSVC deprecation warnings

... for implicitly-generated copy constructors and copy assignment operators.

Differential Revision: https://reviews.llvm.org/D144694

Added: 
    

Modified: 
    libcxx/test/std/utilities/any/any.class/any.modifiers/emplace.pass.cpp
    libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace.pass.cpp
    libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace_initializer_list.pass.cpp
    libcxx/test/std/utilities/optional/optional.object/optional.object.dtor/dtor.pass.cpp
    libcxx/test/std/utilities/optional/optional.object/optional.object.mod/reset.pass.cpp

Removed: 
    


################################################################################
diff  --git a/libcxx/test/std/utilities/any/any.class/any.modifiers/emplace.pass.cpp b/libcxx/test/std/utilities/any/any.class/any.modifiers/emplace.pass.cpp
index 7c5fbfec9bf06..bd0d28b199743 100644
--- a/libcxx/test/std/utilities/any/any.class/any.modifiers/emplace.pass.cpp
+++ b/libcxx/test/std/utilities/any/any.class/any.modifiers/emplace.pass.cpp
@@ -25,9 +25,11 @@
 #include "test_macros.h"
 
 struct Tracked {
-  static int count;
-  Tracked()  {++count;}
-  ~Tracked() { --count; }
+    static int count;
+    Tracked() { ++count; }
+    Tracked(Tracked const&) noexcept { ++count; }
+    Tracked& operator=(Tracked const&) = default;
+    ~Tracked() { --count; }
 };
 int Tracked::count = 0;
 

diff  --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace.pass.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace.pass.cpp
index 3a627a2cfe987..17a1e94b0ba6e 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace.pass.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace.pass.cpp
@@ -40,6 +40,8 @@ class Y
     static bool dtor_called;
     Y() = default;
     Y(int) { TEST_THROW(6);}
+    Y(const Y&) = default;
+    Y& operator=(const Y&) = default;
     ~Y() {dtor_called = true;}
 };
 

diff  --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace_initializer_list.pass.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace_initializer_list.pass.cpp
index 2323acf8bf892..0581fa3e39b4f 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace_initializer_list.pass.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace_initializer_list.pass.cpp
@@ -31,6 +31,8 @@ class X
     constexpr X(int i, bool& dtor_called) : i_(i), dtor_called_(&dtor_called) {}
     constexpr X(std::initializer_list<int> il, bool& dtor_called)
     : i_(il.begin()[0]), j_(il.begin()[1]), dtor_called_(&dtor_called) {}
+    X(const X&) = default;
+    X& operator=(const X&) = default;
     TEST_CONSTEXPR_CXX20 ~X() {*dtor_called_ = true;}
 
     friend constexpr bool operator==(const X& x, const X& y)
@@ -60,6 +62,8 @@ class Z
     Z(int i) : i_(i) {}
     Z(std::initializer_list<int> il) : i_(il.begin()[0]), j_(il.begin()[1])
         { TEST_THROW(6);}
+    Z(const Z&) = default;
+    Z& operator=(const Z&) = default;
     ~Z() {dtor_called = true;}
 
     friend bool operator==(const Z& x, const Z& y)

diff  --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.dtor/dtor.pass.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.dtor/dtor.pass.cpp
index be127a6295d7f..c0044276ea9ad 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.dtor/dtor.pass.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.dtor/dtor.pass.cpp
@@ -29,6 +29,8 @@ class X
 public:
     static bool dtor_called;
     X() = default;
+    X(const X&) = default;
+    X& operator=(const X&) = default;
     ~X() {dtor_called = true;}
 };
 

diff  --git a/libcxx/test/std/utilities/optional/optional.object/optional.object.mod/reset.pass.cpp b/libcxx/test/std/utilities/optional/optional.object/optional.object.mod/reset.pass.cpp
index 22544c98eb0e7..112ee213b42a6 100644
--- a/libcxx/test/std/utilities/optional/optional.object/optional.object.mod/reset.pass.cpp
+++ b/libcxx/test/std/utilities/optional/optional.object/optional.object.mod/reset.pass.cpp
@@ -23,6 +23,9 @@ using std::optional;
 struct X
 {
     static bool dtor_called;
+    X() = default;
+    X(const X&) = default;
+    X& operator=(const X&) = default;
     ~X() {dtor_called = true;}
 };
 


        


More information about the libcxx-commits mailing list