epoc32/include/tools/stlport/stl/config/_warnings_off.h
branchSymbian2
changeset 2 2fe1408b6811
child 4 837f303aceeb
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/epoc32/include/tools/stlport/stl/config/_warnings_off.h	Tue Mar 16 16:12:26 2010 +0000
     1.3 @@ -0,0 +1,60 @@
     1.4 +/* This header turns off warnings that STLport headers generate for compiled
     1.5 + * user code.
     1.6 + */
     1.7 +
     1.8 +#if defined (_STLP_MSVC)
     1.9 +#  if (_STLP_MSVC > 1000)
    1.10 +#    if defined (_STLP_USE_MSVC6_MEM_T_BUG_WORKAROUND)
    1.11 +/*
    1.12 + * 31/07/2004: dums - now that we do not export the basic_string class anymore but only a base class
    1.13 + * we have to disable this warning as the string are used as data members type of many iostream classes.
    1.14 + */
    1.15 +#      pragma warning ( disable : 4251 )  // ignore template classes being exported in .dll's
    1.16 +#    endif
    1.17 +
    1.18 +#    if (_STLP_MSVC < 1200) // VC5 and earlier
    1.19 +#      pragma warning( disable : 4389 ) // '==' : signed/unsigned mismatch
    1.20 +// multiple copy constructors/assignment operators specified,
    1.21 +// with member templates are bogus...
    1.22 +#      pragma warning( disable : 4521 )
    1.23 +#      pragma warning( disable : 4522 )
    1.24 +#    endif
    1.25 +
    1.26 +#    if (_STLP_MSVC < 1300) // VC6, eVC3, eVC4
    1.27 +#      pragma warning( disable : 4097 ) // typedef-name used as based class of (...)
    1.28 +#      pragma warning( disable : 4231 ) // non standard extension : 'extern' before template instanciation
    1.29 +#      pragma warning( disable : 4244 ) // implicit conversion: possible loss of data
    1.30 +#      pragma warning( disable : 4284 ) // for -> operator
    1.31 +//This warning is necessary because of the native platform headers:
    1.32 +#      pragma warning( disable : 4290 ) // c++ exception specification ignored
    1.33 +#      pragma warning( disable : 4514 ) // unreferenced inline function has been removed
    1.34 +#      pragma warning( disable : 4660 ) // template-class specialization '...' is already instantiated
    1.35 +#      pragma warning( disable : 4701 ) // local variable '...' may be used without having been initialized
    1.36 +#      pragma warning( disable : 4710 ) // function (...) not inlined
    1.37 +#      pragma warning( disable : 4786 ) // identifier truncated to 255 characters
    1.38 +#    endif
    1.39 +
    1.40 +#    if (_STLP_MSVC < 1400)
    1.41 +#      pragma warning( disable : 4511 ) // copy constructor cannot be generated
    1.42 +#    endif
    1.43 +
    1.44 +//Pool of common warnings for all MSVC supported versions:
    1.45 +//Many are only useful if warning level is set to 4.
    1.46 +#    pragma warning( disable : 4100 ) // unreferenced formal parameter
    1.47 +#    pragma warning( disable : 4127 ) // conditional expression is constant
    1.48 +#    pragma warning( disable : 4146 ) // unary minus operator applied to unsigned type, result still unsigned
    1.49 +#    pragma warning( disable : 4245 ) // conversion from 'enum ' to 'unsigned int', signed/unsigned mismatch
    1.50 +#    pragma warning( disable : 4355 ) // this used in base member initializer list (used in rope implementation)
    1.51 +#    pragma warning( disable : 4510 ) // default constructor cannot be generated
    1.52 +#    pragma warning( disable : 4512 ) // assignment operator could not be generated
    1.53 +#    pragma warning( disable : 4571 ) // catch(...) blocks compiled with /EHs do not catch or re-throw Structured Exceptions
    1.54 +#    pragma warning( disable : 4610 ) // struct '...' can never be instantiated - user defined construtor required
    1.55 +#  endif
    1.56 +#elif defined (__BORLANDC__)
    1.57 +#  pragma option -w-ccc // -w-8008 Condition is always true OR Condition is always false
    1.58 +#  pragma option -w-inl // -w-8027 Functions containing reserved words are not expanded inline
    1.59 +#  pragma option -w-ngu // -w-8041 Negating unsigned value
    1.60 +#  pragma option -w-pow // -w-8062 Previous options and warnings not restored
    1.61 +#  pragma option -w-rch // -w-8066 Unreachable code
    1.62 +#  pragma option -w-par // -w-8057 Parameter 'parameter' is never used
    1.63 +#endif