title: nested-name-specifier
body: <p>I have a code like:</p>
  
  <pre><code>namespace mymap {
      template &lt;class Key,template &lt;typename T &gt; class Allocator&gt; myownmap {
          typedef pair&lt;const unsigned int, Key&gt; typename _myPair;
          typedef multimap&lt;unsigned int, Key,less&lt;Key&gt; ,Allocator&lt;_myPair&gt; &gt; typename _entriesType;
      }
  }
  </code></pre>
  
  <p>It compiles successfully (and works) under MSVC, but gcc is complaining about invalid syntax:</p>
  
  <pre><code>.hpp:20: error: expected nested-name-specifier before ‘_myPair’
  .hpp:20: error: two or more data types in declaration of ‘_myPair’
  </code></pre>
  
  <p>what i'm doing wrong?</p>