title: use of class template requires template argument list
body: <p>I moved out the methods implementation from my class and caught the following error:</p>
  
  <pre><code>use of class template requires template argument list
  </code></pre>
  
  <p>for method whitch doesn't require template type at all... (for other methods all ok)</p>
  
  <p>Class</p>
  
  <pre><code>template&lt;class T&gt;
  class MutableQueue
  {
  public:
      bool empty() const;
      const T&amp; front() const;
      void push(const T&amp; element);
      T pop();
  
  private:
      queue&lt;T&gt; queue;
      mutable boost::mutex mutex;
      boost::condition condition;
  };
  </code></pre>
  
  <p>Wrong implementation</p>
  
  <pre><code>template&lt;&gt;   //template&lt;class T&gt; also incorrect
  bool MutableQueue::empty() const
  {
      scoped_lock lock(mutex);
      return queue.empty();
  }
  </code></pre>