title: What's the difference in GCC between -std=gnu++0x and -std=c++0x and which one should be used?
body: <p>I'm having troubles with <code>&lt;stdint.h&gt;</code> when using <code>-std=c++0x</code> in GCC 4.4.3 (for Android):</p>
  
  <pre><code>// using -std=c++0x
  #include &lt;stdint.h&gt;
  uint64_t value;  // error: 'uint64_t' does not name a type
  </code></pre>
  
  <p>But using <code>-std=gnu++0x</code> works:</p>
  
  <pre><code>// using -std=gnu++0x
  #include &lt;stdint.h&gt;
  uint64_t value;  // OK
  </code></pre>
  
  <p>Is <code>&lt;stdint.h&gt;</code> incompatible with C++0x?</p>