I\'m using MSVC with a CMaked project. As a result, I\'ve enabled many of the flags on MSVC which were enabled for gcc and clang. However, the /Wall warning level is giving
Mark Tolonen has already point out /W4
.
If that still produces warnings, e.g. you're using an older MSVC version like 7.1, or you're using some 3rd party library that still produces warnings about perfectly good code, and you're aiming for clean compiles, then see my msvc silly-warning suppression header.
It's been through a few rounds of community review, in the comp.lang.c++ Usenet group, but it may/will need updating as Microsoft adds even more silly-warnings in new compiler versions… ;-)
/Wall
is very pedantic. /W4
is probably all you really need. To answer your question, you can disable specific warnings around your headers with:
#pragma warning(disable:xxxx)
#include <yourheader.h>
#pragma warning(default:xxxx)
Or change the warning level with:
#pragma warning(push,3)
#include <yourheader.h>
#pragma warning(pop)
See the MSDN documentation: http://msdn.microsoft.com/en-us/library/2c8f766e.aspx
You can disable specific warnings using the /wdXXXX
flag where XXXX
is the number of the warnings you wish to ignore. No need to modify the code.