struct A { template void foo(); }; template struct B : A { B() { foo(); } }; B<0> b;