/home/ntakagi/work/STLport-5.1.5/stlport/stl/config/_warnings_off.h

Go to the documentation of this file.
00001 /* This header turns off warnings that STLport headers generate for compiled
00002  * user code.
00003  */
00004 
00005 #if defined (_STLP_MSVC)
00006 #  if (_STLP_MSVC > 1000)
00007 #    if defined (_STLP_USE_MSVC6_MEM_T_BUG_WORKAROUND)
00008 /*
00009  * 31/07/2004: dums - now that we do not export the basic_string class anymore but only a base class
00010  * we have to disable this warning as the string are used as data members type of many iostream classes.
00011  */
00012 #      pragma warning ( disable : 4251 )  // ignore template classes being exported in .dll's
00013 #    endif
00014 
00015 #    if (_STLP_MSVC < 1200) // VC5 and earlier
00016 #      pragma warning( disable : 4389 ) // '==' : signed/unsigned mismatch
00017 // multiple copy constructors/assignment operators specified,
00018 // with member templates are bogus...
00019 #      pragma warning( disable : 4521 )
00020 #      pragma warning( disable : 4522 )
00021 #    endif
00022 
00023 #    if (_STLP_MSVC < 1300) // VC6, eVC3, eVC4
00024 #      pragma warning( disable : 4097 ) // typedef-name used as based class of (...)
00025 #      pragma warning( disable : 4231 ) // non standard extension : 'extern' before template instanciation
00026 #      pragma warning( disable : 4244 ) // implicit conversion: possible loss of data
00027 #      pragma warning( disable : 4284 ) // for -> operator
00028 //This warning is necessary because of the native platform headers:
00029 #      pragma warning( disable : 4290 ) // c++ exception specification ignored
00030 #      pragma warning( disable : 4514 ) // unreferenced inline function has been removed
00031 #      pragma warning( disable : 4660 ) // template-class specialization '...' is already instantiated
00032 #      pragma warning( disable : 4701 ) // local variable '...' may be used without having been initialized
00033 #      pragma warning( disable : 4710 ) // function (...) not inlined
00034 #      pragma warning( disable : 4786 ) // identifier truncated to 255 characters
00035 #    endif
00036 
00037 #    if (_STLP_MSVC < 1400)
00038 #      pragma warning( disable : 4511 ) // copy constructor cannot be generated
00039 #    endif
00040 
00041 //Pool of common warnings for all MSVC supported versions:
00042 //Many are only useful if warning level is set to 4.
00043 #    pragma warning( disable : 4100 ) // unreferenced formal parameter
00044 #    pragma warning( disable : 4127 ) // conditional expression is constant
00045 #    pragma warning( disable : 4146 ) // unary minus operator applied to unsigned type, result still unsigned
00046 #    pragma warning( disable : 4245 ) // conversion from 'enum ' to 'unsigned int', signed/unsigned mismatch
00047 #    pragma warning( disable : 4355 ) // this used in base member initializer list (used in rope implementation)
00048 #    pragma warning( disable : 4510 ) // default constructor cannot be generated
00049 #    pragma warning( disable : 4512 ) // assignment operator could not be generated
00050 #    pragma warning( disable : 4571 ) // catch(...) blocks compiled with /EHs do not catch or re-throw Structured Exceptions
00051 #    pragma warning( disable : 4610 ) // struct '...' can never be instantiated - user defined construtor required
00052 #  endif
00053 #elif defined (__BORLANDC__)
00054 #  pragma option -w-ccc // -w-8008 Condition is always true OR Condition is always false
00055 #  pragma option -w-inl // -w-8027 Functions containing reserved words are not expanded inline
00056 #  pragma option -w-ngu // -w-8041 Negating unsigned value
00057 #  pragma option -w-pow // -w-8062 Previous options and warnings not restored
00058 #  pragma option -w-rch // -w-8066 Unreachable code
00059 #  pragma option -w-par // -w-8057 Parameter 'parameter' is never used
00060 #endif



Generated on Mon Mar 10 15:32:46 2008 by  doxygen 1.5.1