llvm-project/libcxx/test/std/utilities/variant/variant.variant/variant.assign
Michael Park a8b057483b Implement LWG 2904.
Summary:
- Removed the move-constructibe requirement from copy-assignable.
- Updated `__assign_alt` such that we direct initialize if
  `_Tp` can be `nothrow`-constructible from `_Arg`, or `_Tp`'s
  move construction can throw. Otherwise, construct a temporary and move it.
- Updated the tests to remove the pre-LWG2904 path.

Depends on D32671.

Reviewers: EricWF, CaseyCarter

Reviewed By: EricWF

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

llvm-svn: 304891
2017-06-07 10:22:43 +00:00
..
T.pass.cpp Implement LWG 2904. 2017-06-07 10:22:43 +00:00
copy.pass.cpp Implement LWG 2904. 2017-06-07 10:22:43 +00:00
move.pass.cpp Implement LWG 2904. 2017-06-07 10:22:43 +00:00