That's a compiler warning. Unless your target is a version of Windows older than XP, you can safely ignore it.
If you don't want to see it anymore, either define the macro *before* including the header, or add
/D "_WIN32_WINNT=0x0501" to your compiler options.
I have tried putting #define _WIN32_WINNT 0x0501 under my includes
Perhaps it would be better if you put it before your includes. Maybe in some header files there are checks like #ifdef _WIN32_WINNT or #if _WIN32_WINNT==0x0501 etc... It compiles fine because your IDE (or the compiler?) is kind enough to define it for you:
mcleano's IDE (or compiler?) wrote:
1>Assuming _WIN32_WINNT=0x0501 (i.e. Windows XP target).
EDIT: I've been writing this for 10 minutes, seriously :D Formatting the text properly, using tags can take a lot of time :P It took me quite a while to figure out how to do this one -> mcleano's IDE (or compiler?) wrote:
You can't do it with the usual quote tag because the '\'' breaks it.
It compiles fine because your IDE is kind enough to define it for you
It's the exact opposite. The fact that that message appear means that the compiler, or anyone else for that matter, isn't defining the macro. Boost needs it, so when it sees that it isn't defined, it defines it with a reasonable value.