[libc++] Implement CTAD for std::tuple
authorLouis Dionne <ldionne@apple.com>
Mon, 12 Aug 2019 18:30:31 +0000 (18:30 +0000)
committerLouis Dionne <ldionne@apple.com>
Mon, 12 Aug 2019 18:30:31 +0000 (18:30 +0000)
commit1308011e1b5c5382281a63dd4191a1784f8d2295
tree1fbf40bca77bc711b1055f6195ff6bf99277d18e
parent38a1aa117f3d1974ab6653b692e9946e3d11db4a
[libc++] Implement CTAD for std::tuple

Summary:
We were using implicit deduction guides instead of explicit ones,
however the implicit ones don't do work anymore when changing the
constructors.

This commit adds the actual guides specified in the Standard to make
libc++ (1) closer to the Standard and (2) more resistent to changes
in std::tuple's constructors.

Reviewers: Quuxplusone

Subscribers: christof, jkorous, dexonsmith, libcxx-commits

Tags: #libc

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

llvm-svn: 368599
libcxx/include/tuple
libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/deduct.pass.cpp [new file with mode: 0644]
libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/implicit_deduction_guides.pass.cpp [deleted file]