williamr@2
|
1 |
/* This header turns off warnings that STLport headers generate for compiled
|
williamr@2
|
2 |
* user code.
|
williamr@2
|
3 |
*/
|
williamr@2
|
4 |
|
williamr@2
|
5 |
#if defined (_STLP_MSVC)
|
williamr@2
|
6 |
# if (_STLP_MSVC > 1000)
|
williamr@2
|
7 |
# if defined (_STLP_USE_MSVC6_MEM_T_BUG_WORKAROUND)
|
williamr@2
|
8 |
/*
|
williamr@2
|
9 |
* 31/07/2004: dums - now that we do not export the basic_string class anymore but only a base class
|
williamr@2
|
10 |
* we have to disable this warning as the string are used as data members type of many iostream classes.
|
williamr@2
|
11 |
*/
|
williamr@2
|
12 |
# pragma warning ( disable : 4251 ) // ignore template classes being exported in .dll's
|
williamr@2
|
13 |
# endif
|
williamr@2
|
14 |
|
williamr@2
|
15 |
# if (_STLP_MSVC < 1200) // VC5 and earlier
|
williamr@2
|
16 |
# pragma warning( disable : 4389 ) // '==' : signed/unsigned mismatch
|
williamr@2
|
17 |
// multiple copy constructors/assignment operators specified,
|
williamr@2
|
18 |
// with member templates are bogus...
|
williamr@2
|
19 |
# pragma warning( disable : 4521 )
|
williamr@2
|
20 |
# pragma warning( disable : 4522 )
|
williamr@2
|
21 |
# endif
|
williamr@2
|
22 |
|
williamr@2
|
23 |
# if (_STLP_MSVC < 1300) // VC6, eVC3, eVC4
|
williamr@2
|
24 |
# pragma warning( disable : 4097 ) // typedef-name used as based class of (...)
|
williamr@2
|
25 |
# pragma warning( disable : 4231 ) // non standard extension : 'extern' before template instanciation
|
williamr@2
|
26 |
# pragma warning( disable : 4244 ) // implicit conversion: possible loss of data
|
williamr@2
|
27 |
# pragma warning( disable : 4284 ) // for -> operator
|
williamr@2
|
28 |
//This warning is necessary because of the native platform headers:
|
williamr@2
|
29 |
# pragma warning( disable : 4290 ) // c++ exception specification ignored
|
williamr@2
|
30 |
# pragma warning( disable : 4514 ) // unreferenced inline function has been removed
|
williamr@2
|
31 |
# pragma warning( disable : 4660 ) // template-class specialization '...' is already instantiated
|
williamr@2
|
32 |
# pragma warning( disable : 4701 ) // local variable '...' may be used without having been initialized
|
williamr@2
|
33 |
# pragma warning( disable : 4710 ) // function (...) not inlined
|
williamr@2
|
34 |
# pragma warning( disable : 4786 ) // identifier truncated to 255 characters
|
williamr@2
|
35 |
# endif
|
williamr@2
|
36 |
|
williamr@2
|
37 |
# if (_STLP_MSVC < 1400)
|
williamr@2
|
38 |
# pragma warning( disable : 4511 ) // copy constructor cannot be generated
|
williamr@2
|
39 |
# endif
|
williamr@2
|
40 |
|
williamr@2
|
41 |
//Pool of common warnings for all MSVC supported versions:
|
williamr@2
|
42 |
//Many are only useful if warning level is set to 4.
|
williamr@2
|
43 |
# pragma warning( disable : 4100 ) // unreferenced formal parameter
|
williamr@2
|
44 |
# pragma warning( disable : 4127 ) // conditional expression is constant
|
williamr@2
|
45 |
# pragma warning( disable : 4146 ) // unary minus operator applied to unsigned type, result still unsigned
|
williamr@2
|
46 |
# pragma warning( disable : 4245 ) // conversion from 'enum ' to 'unsigned int', signed/unsigned mismatch
|
williamr@2
|
47 |
# pragma warning( disable : 4355 ) // this used in base member initializer list (used in rope implementation)
|
williamr@2
|
48 |
# pragma warning( disable : 4510 ) // default constructor cannot be generated
|
williamr@2
|
49 |
# pragma warning( disable : 4512 ) // assignment operator could not be generated
|
williamr@2
|
50 |
# pragma warning( disable : 4571 ) // catch(...) blocks compiled with /EHs do not catch or re-throw Structured Exceptions
|
williamr@2
|
51 |
# pragma warning( disable : 4610 ) // struct '...' can never be instantiated - user defined construtor required
|
williamr@2
|
52 |
# endif
|
williamr@2
|
53 |
#elif defined (__BORLANDC__)
|
williamr@2
|
54 |
# pragma option -w-ccc // -w-8008 Condition is always true OR Condition is always false
|
williamr@2
|
55 |
# pragma option -w-inl // -w-8027 Functions containing reserved words are not expanded inline
|
williamr@2
|
56 |
# pragma option -w-ngu // -w-8041 Negating unsigned value
|
williamr@2
|
57 |
# pragma option -w-pow // -w-8062 Previous options and warnings not restored
|
williamr@2
|
58 |
# pragma option -w-rch // -w-8066 Unreachable code
|
williamr@2
|
59 |
# pragma option -w-par // -w-8057 Parameter 'parameter' is never used
|
williamr@2
|
60 |
#endif
|