struct TypeList0 { } ;
template < typename T, typename ...Args >
struct VariadicTypeList
{
typedef T Head;
typedef VariadicTypeList< Args...> Tail;
} ;
template < typename T>
struct VariadicTypeList< T>
{
typedef T Head;
typedef TypeList0 Tail;
} ;
template < typename ...Args >
struct Types
{
typedef VariadicTypeList< Args...> type;
} ;
int main( void )
{
VariadicTypeList< int , float > :: Head c;
Types< int , float > :: type :: Head d;
return 0 ;
}
c3RydWN0IFR5cGVMaXN0MCB7fTsKCgp0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBlbmFtZSAuLi5BcmdzPgpzdHJ1Y3QgVmFyaWFkaWNUeXBlTGlzdAp7Cgl0eXBlZGVmIFQJSGVhZDsKCXR5cGVkZWYgVmFyaWFkaWNUeXBlTGlzdDxBcmdzLi4uPglUYWlsOwp9Owp0ZW1wbGF0ZTx0eXBlbmFtZSBUPgpzdHJ1Y3QgVmFyaWFkaWNUeXBlTGlzdDxUPgp7Cgl0eXBlZGVmIFQJSGVhZDsKCXR5cGVkZWYgVHlwZUxpc3QwCVRhaWw7Cn07Cgp0ZW1wbGF0ZTx0eXBlbmFtZSAuLi5BcmdzPgpzdHJ1Y3QgVHlwZXMKewoJdHlwZWRlZiBWYXJpYWRpY1R5cGVMaXN0PEFyZ3MuLi4+CXR5cGU7Cn07CgppbnQgbWFpbih2b2lkKQp7CglWYXJpYWRpY1R5cGVMaXN0PGludCwgZmxvYXQ+OjpIZWFkIGM7CglUeXBlczxpbnQsIGZsb2F0Pjo6dHlwZTo6SGVhZCBkOwoJcmV0dXJuIDA7Cn0K
compilation info
prog.cpp:8:34: sorry, unimplemented: cannot expand 'Args ...' into a fixed-length argument list
prog.cpp:20:34: sorry, unimplemented: cannot expand 'Args ...' into a fixed-length argument list
prog.cpp: In function 'int main()':
prog.cpp:26:32: error: expected initializer before 'd'
stdout