#include <iostream>
template <typename T>
struct C
{
void g() {
std::cout << "Common g" << std::endl;
}
void f() {
std::cout << "Common f" << std::endl;
}
};
template <>
void C<int>::f() {
std::cout << "f for int" << std::endl;
}
int
main(void)
{
C<int> c;
c.f();
c.g();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdGVtcGxhdGUgPHR5cGVuYW1lIFQ+CnN0cnVjdCBDCnsKICAgIHZvaWQgZygpIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgIkNvbW1vbiBnIiA8PCBzdGQ6OmVuZGw7CiAgICB9CgogICAgdm9pZCBmKCkgewogICAgICAgIHN0ZDo6Y291dCA8PCAiQ29tbW9uIGYiIDw8IHN0ZDo6ZW5kbDsKICAgIH0KfTsKCnRlbXBsYXRlIDw+CnZvaWQgQzxpbnQ+OjpmKCkgewogICAgc3RkOjpjb3V0IDw8ICJmIGZvciBpbnQiIDw8IHN0ZDo6ZW5kbDsKfQoKaW50Cm1haW4odm9pZCkKewogICAgQzxpbnQ+IGM7CiAgICBjLmYoKTsKICAgIGMuZygpOwogICAgcmV0dXJuIDA7Cn0=