diff options
author | arseny.kapoulkine@gmail.com <arseny.kapoulkine@gmail.com@99668b35-9821-0410-8761-19e4c4f06640> | 2012-03-15 07:08:32 +0000 |
---|---|---|
committer | arseny.kapoulkine@gmail.com <arseny.kapoulkine@gmail.com@99668b35-9821-0410-8761-19e4c4f06640> | 2012-03-15 07:08:32 +0000 |
commit | 800288d351c606b3a67409949a19c8208a499b32 (patch) | |
tree | 393250629c15daae8591c6b4d693925d811adee0 /src | |
parent | 276aee800a86ac7e5b9931322de515c854bd5e19 (diff) |
Intel C++ 11 has the same warning pop bug... Disable warning popping on all Intel C++ versions. Fixes Intel C++ 11 compilation in PUGIXML_NO_STL mode.
git-svn-id: http://pugixml.googlecode.com/svn/trunk@862 99668b35-9821-0410-8761-19e4c4f06640
Diffstat (limited to 'src')
-rw-r--r-- | src/pugixml.cpp | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/src/pugixml.cpp b/src/pugixml.cpp index c56135b..cd42544 100644 --- a/src/pugixml.cpp +++ b/src/pugixml.cpp @@ -50,7 +50,6 @@ #endif #ifdef __INTEL_COMPILER -# pragma warning(push) # pragma warning(disable: 177) // function was declared but never referenced # pragma warning(disable: 279) // controlling expression is constant # pragma warning(disable: 1478 1786) // function was declared "deprecated" @@ -9900,16 +9899,10 @@ namespace pugi # pragma option pop #endif -// Some Intel C++ versions (9, 10) do not properly keep warning state for function templates, +// Intel C++ does not properly keep warning state for function templates, // so popping warning state at the end of translation unit leads to warnings in the middle. -#if !defined(__INTEL_COMPILER) || __INTEL_COMPILER >= 1100 -# ifdef __INTEL_COMPILER -# pragma warning(pop) -# endif - -# ifdef _MSC_VER -# pragma warning(pop) -# endif +#if defined(_MSC_VER) && !defined(__INTEL_COMPILER) +# pragma warning(pop) #endif // Undefine all local macros (makes sure we're not leaking macros in header-only mode) |