summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/utilities
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2017-01-05 01:28:40 +0000
committerEric Fiselier <eric@efcs.ca>2017-01-05 01:28:40 +0000
commit76a01ea34d6574a4333d98eeb3b8bc7f9472f579 (patch)
tree001de61ee082cbbd7a4b794c3425b78ad84deae0 /libcxx/test/std/utilities
parentbe04bfee2a35bea91d0e64eb0dfc1c454ffc37e9 (diff)
downloadbcm5719-llvm-76a01ea34d6574a4333d98eeb3b8bc7f9472f579.tar.gz
bcm5719-llvm-76a01ea34d6574a4333d98eeb3b8bc7f9472f579.zip
Fix PR26961 - Add default constructor to std::pointer_safety struct.
In ABI v1 libc++ implements std::pointer_safety as a class type instead of an enumeration. However this class type does not provide a default constructor as it should. This patch adds that default constructor. llvm-svn: 291059
Diffstat (limited to 'libcxx/test/std/utilities')
-rw-r--r--libcxx/test/std/utilities/memory/util.dynamic.safety/get_pointer_safety.pass.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/libcxx/test/std/utilities/memory/util.dynamic.safety/get_pointer_safety.pass.cpp b/libcxx/test/std/utilities/memory/util.dynamic.safety/get_pointer_safety.pass.cpp
index ee2f81713b2..df77be9643d 100644
--- a/libcxx/test/std/utilities/memory/util.dynamic.safety/get_pointer_safety.pass.cpp
+++ b/libcxx/test/std/utilities/memory/util.dynamic.safety/get_pointer_safety.pass.cpp
@@ -16,10 +16,22 @@
#include <memory>
#include <cassert>
+
+void test_pr26961() {
+ std::pointer_safety d;
+ d = std::get_pointer_safety();
+ assert(d == std::get_pointer_safety());
+}
+
int main()
{
+ {
std::pointer_safety r = std::get_pointer_safety();
assert(r == std::pointer_safety::relaxed ||
r == std::pointer_safety::preferred ||
r == std::pointer_safety::strict);
+ }
+ {
+ test_pr26961();
+ }
}
OpenPOWER on IntegriCloud