llvm-project/libcxx/test/std/utilities/utility/pairs
Louis Dionne 9f77b1a1de [pair] Mark constructors as conditionally noexcept
Summary:
std::tuple marks its constructors as noexcept when the corresponding
memberwise constructors are noexcept too -- this commit improves std::pair
so that it behaves the same.

This is a re-application of r348824, which broke the build in C++03 mode
because a test was marked as supported in C++03 when it shouldn't be.

Note:
I did not add support in the explicit and non-explicit `pair(_Tuple&& __p)`
constructors because those are non-standard extensions, and supporting them
properly is tedious (we have to copy the rvalue-referenceness of the deduced
_Tuple&& onto the result of tuple_element).

<rdar://problem/29537079>

Reviewers: mclow.lists, EricWF

Subscribers: christof, llvm-commits

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

llvm-svn: 348847
2018-12-11 14:22:28 +00:00
..
pair.astuple Remove unneeded typename from test 2017-10-10 07:42:19 +00:00
pair.piecewise Cleanup _LIBCPP_HAS_NO_<c++11-feature> in the utilities library 2017-04-19 00:56:32 +00:00
pairs.general
pairs.pair [pair] Mark constructors as conditionally noexcept 2018-12-11 14:22:28 +00:00
pairs.spec [libcxx] [test] Fix MSVC warning C4244 "conversion from 'X' to 'Y', possible loss of data", part 7/7. 2016-12-08 21:38:57 +00:00
nothing_to_do.pass.cpp