What's the difference in GCC between -std=gnu++0x and -std=c++0x and which one should be used?
I'm having troubles with <stdint.h> when using -std=c++0x in GCC 4.4.3 (for Android): // using -std=c++0x #include <stdint.h> uint64_t value; // error: 'uint64_t' does not name a type But using -std=gnu++0x works: // using -std=gnu++0x #include <stdint.h> uint64_t value; // OK Is <stdint.h> incompatible with C++0x? So far as I can tell, I think this could be argued an implementation bug (or actually, since C++0x isn't published, not a bug per se but an incomplete implementation of the current state of the upcoming standard). Here's why, referring to n3225 for the expected behavior of -std=c+