summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/utilities
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/utilities')
-rw-r--r--libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default.pass.cpp (renamed from libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default01.pass.cpp)31
-rw-r--r--libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default_allows_incomplete.pass.cpp (renamed from libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default02.pass.cpp)63
-rw-r--r--libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/default.pass.cpp5
3 files changed, 50 insertions, 49 deletions
diff --git a/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default01.pass.cpp b/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default.pass.cpp
index 0cc54382b98..ff59b3b9f80 100644
--- a/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default01.pass.cpp
+++ b/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default.pass.cpp
@@ -17,31 +17,34 @@
#include <memory>
#include <cassert>
+#include "test_macros.h"
-class Deleter
-{
- int state_;
+#if defined(_LIBCPP_VERSION)
+_LIBCPP_SAFE_STATIC std::unique_ptr<int[]> global_static_unique_ptr;
+#endif
- Deleter(Deleter&);
- Deleter& operator=(Deleter&);
+class Deleter {
+ int state_;
+
+ Deleter(Deleter&);
+ Deleter& operator=(Deleter&);
public:
- Deleter() : state_(5) {}
+ Deleter() : state_(5) {}
- int state() const {return state_;}
+ int state() const { return state_; }
- void operator()(void*) {}
+ void operator()(void*) {}
};
-int main()
-{
- {
+int main() {
+ {
std::unique_ptr<int[]> p;
assert(p.get() == 0);
- }
- {
+ }
+ {
std::unique_ptr<int[], Deleter> p;
assert(p.get() == 0);
assert(p.get_deleter().state() == 5);
- }
+ }
}
diff --git a/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default02.pass.cpp b/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default_allows_incomplete.pass.cpp
index 3ded41c419c..f54baac5bb0 100644
--- a/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default02.pass.cpp
+++ b/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default_allows_incomplete.pass.cpp
@@ -20,65 +20,58 @@
struct A;
-class Deleter
-{
- int state_;
+class Deleter {
+ int state_;
- Deleter(Deleter&);
- Deleter& operator=(Deleter&);
+ Deleter(Deleter&);
+ Deleter& operator=(Deleter&);
public:
- Deleter() : state_(5) {}
+ Deleter() : state_(5) {}
- int state() const {return state_;}
+ int state() const { return state_; }
- void operator()(A* p);
+ void operator()(A* p);
};
void check(int i);
-template <class D = std::default_delete<A> >
-struct B
-{
- std::unique_ptr<A[], D> a_;
- B();
- ~B();
+template <class D = std::default_delete<A>>
+struct B {
+ std::unique_ptr<A[], D> a_;
+ B();
+ ~B();
- A* get() const {return a_.get();}
- D& get_deleter() {return a_.get_deleter();}
+ A* get() const { return a_.get(); }
+ D& get_deleter() { return a_.get_deleter(); }
};
-int main()
-{
- {
+int main() {
+ {
B<> s;
assert(s.get() == 0);
- }
- check(0);
- {
+ }
+ check(0);
+ {
B<Deleter> s;
assert(s.get() == 0);
assert(s.get_deleter().state() == 5);
- }
- check(0);
+ }
+ check(0);
}
-struct A
-{
- static int count;
- A() {++count;}
- A(const A&) {++count;}
- ~A() {--count;}
+struct A {
+ static int count;
+ A() { ++count; }
+ A(const A&) { ++count; }
+ ~A() { --count; }
};
int A::count = 0;
-void Deleter::operator()(A* p) {delete p;}
+void Deleter::operator()(A* p) { delete p; }
-void check(int i)
-{
- assert(A::count == i);
-}
+void check(int i) { assert(A::count == i); }
template <class D>
B<D>::B() {}
diff --git a/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/default.pass.cpp b/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/default.pass.cpp
index 569daae7da0..6508d9360e5 100644
--- a/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/default.pass.cpp
+++ b/libcxx/test/std/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/default.pass.cpp
@@ -25,9 +25,14 @@
#include <memory>
#include <cassert>
+#include "test_macros.h"
#include "deleter_types.h"
+#if defined(_LIBCPP_VERSION)
+_LIBCPP_SAFE_STATIC std::unique_ptr<int> global_static_unique_ptr;
+#endif
+
struct IncompleteT;
void checkNumIncompleteTypeAlive(int i);
OpenPOWER on IntegriCloud