config_begin.hpp 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // (C) Copyright Ion Gaztanaga 2006-2013
  4. //
  5. // Distributed under the Boost Software License, Version 1.0.
  6. // (See accompanying file LICENSE_1_0.txt or copy at
  7. // http://www.boost.org/LICENSE_1_0.txt)
  8. //
  9. // See http://www.boost.org/libs/intrusive for documentation.
  10. //
  11. /////////////////////////////////////////////////////////////////////////////
  12. #ifndef BOOST_INTRUSIVE_CONFIG_INCLUDED
  13. #define BOOST_INTRUSIVE_CONFIG_INCLUDED
  14. #include <boost/config.hpp>
  15. #endif
  16. #ifdef BOOST_MSVC
  17. #pragma warning (push)
  18. //
  19. //'function' : resolved overload was found by argument-dependent lookup
  20. //A function found by argument-dependent lookup (Koenig lookup) was eventually
  21. //chosen by overload resolution.
  22. //
  23. //In Visual C++ .NET and earlier compilers, a different function would have
  24. //been called. To pick the original function, use an explicitly qualified name.
  25. //
  26. //warning C4275: non dll-interface class 'x' used as base for
  27. //dll-interface class 'Y'
  28. #pragma warning (disable : 4275)
  29. //warning C4251: 'x' : class 'y' needs to have dll-interface to
  30. //be used by clients of class 'z'
  31. #pragma warning (disable : 4251)
  32. #pragma warning (disable : 4675)
  33. #pragma warning (disable : 4996)
  34. #pragma warning (disable : 4503)
  35. #pragma warning (disable : 4284) // odd return type for operator->
  36. #pragma warning (disable : 4244) // possible loss of data
  37. #pragma warning (disable : 4521) ////Disable "multiple copy constructors specified"
  38. #pragma warning (disable : 4522)
  39. #pragma warning (disable : 4146)
  40. #pragma warning (disable : 4267) //conversion from 'X' to 'Y', possible loss of data
  41. #pragma warning (disable : 4127) //conditional expression is constant
  42. #pragma warning (disable : 4706) //assignment within conditional expression
  43. #pragma warning (disable : 4541) //'typeid' used on polymorphic type 'boost::exception' with /GR-
  44. #pragma warning (disable : 4512) //'typeid' used on polymorphic type 'boost::exception' with /GR-
  45. #endif
  46. //#define BOOST_INTRUSIVE_USE_ITERATOR_FACADE
  47. //#define BOOST_INTRUSIVE_USE_ITERATOR_ENABLE_IF_CONVERTIBLE