1// { dg-do assemble } 2 3class X 4{ 5 public: 6 virtual void f() const = 0; 7}; 8 9template <class T> 10class Y: public X 11{ 12 public: 13 virtual void f() const; 14}; 15 16template <class T> 17void Y<T>::f() const 18{ 19} 20 21template <> 22void Y<bool>::f() const; 23 24template <> 25void Y<bool>::f() const 26{ 27} 28