あそうか、名前空間が違うとtemplateの特殊化できないのかnamespace ns1 { template T f(); namespace ns2 { template int f() {} }}