#include <iostream>
template <typename ...Args> struct C
{
static void foo() { int a[] = { (Args::m(), 0)... }; }
};
struct A { static void m() { std::cout << "M\n"; } };
int main()
{
C<A, A, A>::foo();
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdGVtcGxhdGUgPHR5cGVuYW1lIC4uLkFyZ3M+IHN0cnVjdCBDCnsKCXN0YXRpYyB2b2lkIGZvbygpIHsgaW50IGFbXSA9IHsgKEFyZ3M6Om0oKSwgMCkuLi4gfTsgfQp9OwoKc3RydWN0IEEgeyBzdGF0aWMgdm9pZCBtKCkgeyBzdGQ6OmNvdXQgPDwgIk1cbiI7IH0gfTsKCmludCBtYWluKCkKewoJQzxBLCBBLCBBPjo6Zm9vKCk7Cn0=