Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/g++.dg/ext/integer-pack3.C @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
1 // PR c++/85049 | |
2 // { dg-do compile { target c++11 } } | |
3 | |
4 typedef __SIZE_TYPE__ size_t; | |
5 template<typename _Tp, _Tp... _Idx> | |
6 struct integer_sequence | |
7 { | |
8 typedef _Tp value_type; | |
9 static constexpr size_t size() noexcept { return sizeof...(_Idx); } | |
10 }; | |
11 template<typename _Tp, _Tp _Num> | |
12 using make_integer_sequence = integer_sequence<_Tp, __integer_pack(_Num)...>; | |
13 template<size_t _Num> | |
14 using make_index_sequence = make_integer_sequence<size_t, _Num>; | |
15 template<typename... _Types> | |
16 using index_sequence_for = make_index_sequence<sizeof...(_Types)>; | |
17 template <typename...> | |
18 struct tuple {}; | |
19 template <typename... Ts> | |
20 int get(tuple<index_sequence_for<Ts...>, Ts...>); | |
21 int x = get(tuple<index_sequence_for<>>{}); |