]> git.saurik.com Git - wxWidgets.git/blob - include/wx/beforestd.h
MSVC 5 compilation fixes.
[wxWidgets.git] / include / wx / beforestd.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: include/wx/beforestd.h
3 // Purpose: #include before STL headers
4 // Author: Vadim Zeitlin
5 // Modified by:
6 // Created: 07/07/03
7 // RCS-ID: $Id$
8 // Copyright: (c) 2003 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
9 // Licence: wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11
12 /**
13 Unfortunately, when compiling at maximum warning level, the standard
14 headers themselves may generate warnings -- and really lots of them. So
15 before including them, this header should be included to temporarily
16 suppress the warnings and after this the header afterstd.h should be
17 included to enable them back again.
18
19 Note that there are intentionally no inclusion guards in this file, because
20 it can be included several times.
21 */
22
23 #ifdef _MSC_VER
24 // these warning have to be disabled and not just temporarily disabled
25 // because they will be given at the end of the compilation of the current
26 // source -- and there is absolutely nothing we can do about them
27
28 // 'foo': unreferenced inline function has been removed
29 #pragma warning(disable:4514)
30
31 // 'function' : function not inlined
32 #pragma warning(disable:4710)
33
34 // 'id': identifier was truncated to 'num' characters in the debug info
35 #pragma warning(disable:4786)
36
37 // MSVC 5 does not have this
38 #if _MSC_VER > 1100
39 #pragma warning(push, 1)
40 #else
41 // 'expression' : signed/unsigned mismatch
42 #pragma warning(disable:4018)
43
44 // 'conversion' : conversion from 'type1' to 'type2',
45 // possible loss of data
46 #pragma warning(disable:4244)
47
48 // C++ language change: to explicitly specialize class template
49 // 'identifier' use the following syntax
50 #pragma warning(disable:4663)
51 #endif
52 #endif