title: templates may not be ‘virtual’
body: <p>Given the code below, the compiler is showing a message pointing that <code>error: templates may not be ‘virtual’</code>. Does anyone have a suggestion on how to solve the bug?</p>
  
  <pre><code>template &lt; class FOO_TYPE&gt;
  class CFoo{
      public:
          ...
          template &lt; class BAR_TYPE &gt;
          virtual void doSomething( const CBar&lt;BAR_TYPE&gt; &amp;); // here's the error
          ...
          virtual ~CFoo();
      protected:
          MyClass &lt; FOO_TYPE &gt; * m_pClass;
  };
  
  template &lt; class FOO_TYPE &gt;
  template &lt; class BAR_TYPE &gt;
  void CFoo&lt;FOO_TYPE&gt;::doSomething( const CBar&lt;BAR_TYPE&gt; &amp; refBar ){
      ...
  }
  </code></pre>