diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2018-10-25 17:41:54 +0100 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2018-10-25 17:41:54 +0100 |
commit | 74875207d8d36c3b8a0952ccde6b5115a9744f5c (patch) | |
tree | 346c4a76b65638f75432508284ab39eab74fe4f4 /config | |
parent | 7aec289640530c5e1cf9825ce91fc55d1483496d (diff) | |
download | gcc-74875207d8d36c3b8a0952ccde6b5115a9744f5c.tar.gz |
PR libstdc++/87704 fix unique_ptr(nullptr_t) constructors
Using a delegating constructor to implement these constructors means
that they instantiate the destructor, which requires the element_type to
be complete. In C++11 and C++14 they were specified to be delegating,
but that was changed as part of LWG 2801 so in C++17 they don't require
a complete type (as was intended all along).
Backport from mainline
2018-10-23 Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/87704
* include/bits/unique_ptr.h (unique_ptr::unique_ptr(nullptr_t)): Do
not delegate to default constructor.
(unique_ptr<T[], D>::unique_ptr(nullptr_t)): Likewise.
* testsuite/20_util/unique_ptr/cons/incomplete.cc: New test.
From-SVN: r265499
Diffstat (limited to 'config')
0 files changed, 0 insertions, 0 deletions