title: unordered_map error in GCC
body: <p>When was the <code>unordered_map</code> concept built into g++?</p>
  
  <p>Because the following code throws an error.</p>
  
  <pre><code>#include&lt;iostream&gt;
  #include&lt;unordered_map&gt;
  #include&lt;stdio.h&gt;
  
  using namespace std;
  
  std::unordered_map&lt;std::int,int&gt; mirror;
  
  mirror['A'] = 'A';
  mirror['B'] = '#';
  mirror['E'] = 3;
  
  int main(void)
  {
      std::cout&lt;&lt;mirror['A'];
      std::cout&lt;&lt;mirror['B'];
      std::cout&lt;&lt;mirror['C'];
      return 0;
  }
  </code></pre>
  
  <p>I am compiling the code as follows:</p>
  
  <pre><code>g++ -c hashexample.cpp
  g++ -o result hashExample.o
  ./result
  </code></pre>
  
  <p>The error I got is this:</p>
  
  <blockquote>
    <p>inavalid types int[char[ for aaray subscript</p>
  </blockquote>
  
  <p>What is the fix for this?</p>