forked from OSchip/llvm-project
![]() 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 |
||
---|---|---|
.. | ||
U_V.pass.cpp | ||
assign_const_pair_U_V.pass.cpp | ||
assign_pair.pass.cpp | ||
assign_pair_cxx03.pass.cpp | ||
assign_rv_pair.pass.cpp | ||
assign_rv_pair_U_V.pass.cpp | ||
const_first_const_second.pass.cpp | ||
const_first_const_second_cxx03.pass.cpp | ||
const_pair_U_V.pass.cpp | ||
const_pair_U_V_cxx03.pass.cpp | ||
copy_ctor.pass.cpp | ||
default-sfinae.pass.cpp | ||
default.pass.cpp | ||
dtor.pass.cpp | ||
implicit_deduction_guides.pass.cpp | ||
move_ctor.pass.cpp | ||
not_constexpr_cxx11.fail.cpp | ||
piecewise.pass.cpp | ||
rv_pair_U_V.pass.cpp | ||
special_member_generation_test.pass.cpp | ||
swap.pass.cpp | ||
trivial_copy_move.pass.cpp | ||
types.pass.cpp |