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
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