This is an archive of the discontinued LLVM Phabricator instance.

Make pair and tuple respect is_copy_assignable and is_move_assignable
AbandonedPublic

Authored by EricWF on Jun 13 2016, 4:26 PM.

Details

Summary

This shows the basic jist of my proposed changes. I haven't tested them enough to ensure they are 100% correct.

Can anybody suggest a better solution?

Diff Detail

Event Timeline

EricWF updated this revision to Diff 60624.Jun 13 2016, 4:26 PM
EricWF retitled this revision from to Make pair respect is_copy_assignable and is_move_assignable.
EricWF updated this object.
EricWF added reviewers: mclow.lists, rsmith, K-ballo.
EricWF added a subscriber: cfe-commits.
EricWF updated this revision to Diff 60631.Jun 13 2016, 5:10 PM
EricWF retitled this revision from Make pair respect is_copy_assignable and is_move_assignable to Make pair and tuple respect is_copy_assignable and is_move_assignable.
  • Remove = default copy/move constructors in pair. Let the compiler implicitly mark them as default.
  • Roughly implement the changes in <tuple> This still needs a ton more tests.
EricWF updated this revision to Diff 60633.Jun 13 2016, 5:30 PM

Fix bad #ifdef change in pair.

EricWF updated this revision to Diff 60636.Jun 13 2016, 5:41 PM

Get all but 1 test passing.

EricWF updated this revision to Diff 60637.Jun 13 2016, 5:45 PM

All tests are now passing.

EricWF updated this revision to Diff 60638.Jun 13 2016, 5:47 PM

Actually get all of the tests passing.

Sorry for the spam.

EricWF updated this revision to Diff 60640.Jun 13 2016, 6:49 PM

Fix merge conflicts with master.

EricWF abandoned this revision.Jul 23 2016, 10:59 PM

Similar reversion committed as r276548.