_stricmp with mingw and c++0x not existent?

DaVinci picture DaVinci · Jun 10, 2011 · Viewed 8.7k times · Source

I'm currently trying to use googletest with MinGW and -std=c++0x but it complains that _stricmp is not declared in this scope which it doesn't when I do not use -std=c++0x. I have no idea what _stricmp is, I just found out that it is defined in cstring/string.h, so why is it gone in C++0x?

Answer

Michael Burr picture Michael Burr · Jun 10, 2011

The -std=c++0x option causes g++ to go into 'strict ANSI' mode so it doesn't declare non-standard functions (and _stricmp() is non-standard - it's just a version of strcmp() that's case-insensitive).

Use -std=gnu++0x instead.