//===----------------------------------------------------------------------===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// // UNSUPPORTED: c++03, c++11 // Make sure that we don't blow up the template instantiation recursion depth // for tuples of size <= 1024. #include #include #include template constexpr void CreateTuple(std::index_sequence) { std::tuple tuple(I...); assert(std::get<0>(tuple) == 0); assert(std::get(tuple) == sizeof...(I)-1); } constexpr bool test() { CreateTuple(std::make_index_sequence<1024>{}); return true; } int main(int, char**) { test(); static_assert(test(), ""); return 0; }