Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/cpp0x/variadic-tuple2.C @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
line wrap: on
line source
// PR c++/67164 // { dg-do compile { target c++11 } } #include <type_traits> namespace detail { template <bool ...b> struct fast_and : std::is_same<fast_and<b...>, fast_and<(b, true)...>> { }; } template <typename ...Xn> struct tuple { tuple() { } template <typename ...Yn, typename = typename std::enable_if< detail::fast_and<std::is_constructible<Xn, Yn&&>::value...>::value >::type> tuple(Yn&& ...yn) { } template <typename ...Yn, typename = typename std::enable_if< detail::fast_and<std::is_constructible<Xn, Yn const&>::value...>::value >::type> tuple(tuple<Yn...> const& other) { } }; tuple<tuple<>> t{}; tuple<tuple<>> copy = t;