test.cpp:18:39: error: type/value mismatch at argument 1 in template parameter list for ‘template<class ... _Elements> class std::tuple’
using Type1 = std::tuple<Ts::Type1...>;
^
test.cpp:18:39: note: expected a type, got ‘Ts::Type1 ...’
test.cpp:19:39: error: type/value mismatch at argument 1 in template parameter list for ‘template<class ... _Elements> class std::tuple’
using Type2 = std::tuple<Ts::Type2...>;
^
test.cpp:19:39: note: expected a type, got ‘Ts::Type2 ...’
test.cpp: In function ‘int main()’:
test.cpp:24:26: error: ‘Type1’ is not a member of ‘MultiCase<CaseA, CaseB>’
MultiCase<CaseA,CaseB>::Type1 test;
^~~~~
The expansion does not work. What I would like to get is an expansion to std::tuple<CaseA::Type1,CaseB::Type1> and std::tuple<CaseA::Type2,CaseB::Type2>. What am I doing wrong?