id summary reporter owner description type status milestone component version severity resolution keywords cc 5868 The warning stack is not maintained Tsukasa Kusakabe Robert Ramey " === Problem === When ""#include"" is executed for the following file, the warning stack is destroyed. The cause is a misuse of ""#pragma warning(default: warning-number-list)"". File list * boost/archive/xml_wiarchive.hpp === Impact === When the VisualStudio user uses a specific header, a part of a necessary warning is not displayed. === Reproduction code === {{{ #!cpp #include #include #pragma warning(error: 4193) //boost/archive/xml_wiarchive.hpp #pragma warning(pop) // => warning C4193 #include #pragma warning(pop) // !!! There is not warning. !!! #pragma warning(pop) // !!! There is not warning. !!! int main() { return 0; } }}} === Patch === {{{ #!diff Index: boost/archive/xml_wiarchive.hpp =================================================================== --- boost/archive/xml_wiarchive.hpp (revision 74236) +++ boost/archive/xml_wiarchive.hpp (working copy) @@ -126,8 +126,7 @@ } // namespace boost #ifdef BOOST_MSVC -# pragma warning(push) -# pragma warning(disable : 4511 4512) +#pragma warning(pop) #endif #include // pops abi_suffix.hpp pragmas }}} === Environment === * OS: Windows 7 Professional SP1 * Compiler: {{{ Microsoft Visual Studio 2010 Version 10.0.30319.1 RTMRel Microsoft .NET Framework Version 4.0.30319 RTMRel }}} === Comments === Division origin #5577 " Bugs closed To Be Determined serialization Boost 1.48.0 Problem fixed