1
#if !defined (__ICL)
2
/* This header is used to turn off warnings of Microsoft compilers generated.
3
 * while building STLport.
4
 * For compiling user code, see stlport/config/_msvc_warnings_off.h.
5
 */
6
7
#  if (_MSC_VER < 1300) /* VC6/eVC4 */
8
#    pragma warning( disable : 4097 ) /* typedef-name used as based class of (...) */
9
#    pragma warning( disable : 4251 ) /* DLL interface needed */
10
#    pragma warning( disable : 4284 ) /* for -> operator */
11
#    pragma warning( disable : 4503 ) /* decorated name length exceeded, name was truncated */
12
#    pragma warning( disable : 4514 ) /* unreferenced inline function has been removed */
13
#    pragma warning( disable : 4660 ) /* template-class specialization '...' is already instantiated */
14
#    pragma warning( disable : 4701 ) /* local variable 'base' may be used without having been initialized */
15
#    pragma warning( disable : 4710 ) /* function (...) not inlined */
16
#    pragma warning( disable : 4786 ) /* identifier truncated to 255 characters */
17
#  endif
18
19
#  if (_MSC_VER <= 1310)
20
#    pragma warning( disable : 4511 ) /* copy constructor cannot be generated */
21
#  endif
22
23
#  if (_MSC_VER < 1300) && defined (UNDER_CE)
24
#    pragma warning( disable : 4201 ) /* nonstandard extension used : nameless struct/union */
25
#    pragma warning( disable : 4214 ) /* nonstandard extension used : bit field types other than int */
26
#  endif
27
28
/* Suppress warnings emitted from Windows CE SDK headers. */
29
#  if (_MSC_VER >= 1400) && defined (UNDER_CE)
30
#    pragma warning( disable : 4115 )  /* Named type definition in parentheses. */
31
#    pragma warning( disable : 4201 )  /* Nameless struct/union. */
32
#    pragma warning( disable : 4214 )  /* Bit field types other than int. */
33
#    pragma warning( disable : 4290 )  /* C++ exception specification ignored. */
34
#    pragma warning( disable : 4430 )  /* Missing type specifier, int assumed. */
35
#    pragma warning( disable : 4431 )  /* Missing type specifier, int assumed. */
36
#  endif
37
38
#  pragma warning( disable : 4075 ) /* initializers put in unrecognized initialization area */
39
/* This warning is disable only for the c_locale_win32.c file compilation:  */
40
#  pragma warning( disable : 4100 ) /* unreferenced formal parameter */
41
#  pragma warning( disable : 4127 ) /* conditional expression is constant */
42
#  pragma warning( disable : 4146 ) /* unary minus applied to unsigned type */
43
#  pragma warning( disable : 4245 ) /* conversion from 'enum ' to 'unsigned int', signed/unsigned mismatch */
44
#  pragma warning( disable : 4244 ) /* implicit conversion: possible loss of data */
45
#  pragma warning( disable : 4512 ) /* assignment operator could not be generated */
46
#  pragma warning( disable : 4571 ) /* catch(...) blocks compiled with /EHs do not catch or re-throw Structured Exceptions */
47
#  pragma warning( disable : 4702 ) /* unreachable code (appears in release with warning level4) */
48
#else
49
#  pragma warning( disable : 69 )   /* integer conversion resulted in truncation */
50
#  pragma warning( disable : 174 )  /* expression has no effect */
51
#  pragma warning( disable : 279 )  /* controling expression is constant */
52
#  pragma warning( disable : 383 )  /* reference to temporary used */
53
#  pragma warning( disable : 444 )  /* destructor for base class "..." is not virtual*/
54
#  pragma warning( disable : 810 )  /* conversion from "int" to "char" may lose significant bits */
55
#  pragma warning( disable : 981 )  /* operands are evaluated in unspecified order */
56
#  pragma warning( disable : 1418 ) /* external definition with no prior declaration */
57
#  pragma warning( disable : 1419 ) /* external declaration in primary source file */
58
#  pragma warning( disable : 1572 ) /* floating-point equality and inequality comparisons are unreliable */
59
#  pragma warning( disable : 1682 ) /* implicit conversion of a 64-bit integral type to a smaller integral type */
60
#  pragma warning( disable : 1683 ) /* explicit conversion of a 64-bit integral type to a smaller integral type */
61
#endif