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