diff options
author | Eric Fiselier <eric@efcs.ca> | 2017-01-05 01:28:40 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2017-01-05 01:28:40 +0000 |
commit | 76a01ea34d6574a4333d98eeb3b8bc7f9472f579 (patch) | |
tree | 001de61ee082cbbd7a4b794c3425b78ad84deae0 /libcxx/test/std/utilities | |
parent | be04bfee2a35bea91d0e64eb0dfc1c454ffc37e9 (diff) | |
download | bcm5719-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.cpp | 12 |
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(); + } } |