1 // RUN: %clang_cc1 -std=c++14 -x c++-header %s -emit-pch -o %t.pch 2 // RUN: %clang_cc1 -std=c++14 -x c++ /dev/null -include-pch %t.pch 3 4 template <int i> 5 struct X { }; 6 7 using SizeT = decltype(sizeof(int)); 8 9 template <SizeT i, typename ...T> 10 using TypePackElement = __type_pack_element<i, T...>; 11 12 void fn1() { 13 X<0> x0 = TypePackElement<0, X<0>, X<1>, X<2>>{}; 14 X<1> x1 = TypePackElement<1, X<0>, X<1>, X<2>>{}; 15 X<2> x2 = TypePackElement<2, X<0>, X<1>, X<2>>{}; 16 } 17