1// Test for obsolete specialization syntax. Turn off -pedantic. 2// Special g++ Options: 3 4#include <iostream> 5#include <typeinfo> 6 7template <typename T> 8class A { 9public: 10 void test (); 11}; 12 13template <typename T> 14void 15A<T>::test(){ 16 std::cerr << "test for " << typeid(*this).name() << std::endl; 17} 18// Specialization declaration 19void 20A<double>::test(); 21 22// Specialization definition 23void 24A<double>::test(){ 25 std::cerr << "specialization for " << typeid(*this).name() << std::endl; 26} 27 28 29int 30main(){ 31 A<int> ai; 32 A<double> ad; 33 ai.test(); 34 ad.test(); 35 return 0; 36} 37 38 39