title: C++ map: expected initializer before ‘<’ token
body: <p>I'm getting this error in a header file:</p>
  
  <blockquote>
    <p>error: expected initializer before ‘&lt;’ token</p>
  </blockquote>
  
  <pre><code>class MyEntity;
  typedef std::map&lt;uint16,MyEntity*&gt; myList_t;
  </code></pre>
  
  <p>I figured it's not seeing the map include, but at the top of that header file is:</p>
  
  <pre><code>#include &lt;list&gt;
  #include &lt;map&gt;
  </code></pre>
  
  <p>In another header file:</p>
  
  <pre><code>typedef unsigned int               uint32;
  </code></pre>
  
  <p>Any ideas?</p>
  
  <p>g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48)</p>