36d605d07225df7adca5b18eabf5c5b9e01f489b
[platform/upstream/boost.git] / boost / intrusive / detail / config_begin.hpp
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
13 #ifndef BOOST_CONFIG_HPP
14 #include <boost/config.hpp>
15 #endif
16
17 #ifdef BOOST_MSVC
18
19    #pragma warning (push)
20    //
21    //'function' : resolved overload was found by argument-dependent lookup
22    //A function found by argument-dependent lookup (Koenig lookup) was eventually
23    //chosen by overload resolution.
24    //
25    //In Visual C++ .NET and earlier compilers, a different function would have
26    //been called. To pick the original function, use an explicitly qualified name.
27    //
28
29    //warning C4275: non dll-interface class 'x' used as base for
30    //dll-interface class 'Y'
31    #pragma warning (disable : 4275)
32    //warning C4251: 'x' : class 'y' needs to have dll-interface to
33    //be used by clients of class 'z'
34    #pragma warning (disable : 4251)
35    #pragma warning (disable : 4675)
36    #pragma warning (disable : 4996)
37    #pragma warning (disable : 4503)
38    #pragma warning (disable : 4284) // odd return type for operator->
39    #pragma warning (disable : 4244) // possible loss of data
40    #pragma warning (disable : 4521) ////Disable "multiple copy constructors specified"
41    #pragma warning (disable : 4522)
42    #pragma warning (disable : 4146)
43    #pragma warning (disable : 4267) //conversion from 'X' to 'Y', possible loss of data
44    #pragma warning (disable : 4127) //conditional expression is constant
45    #pragma warning (disable : 4706) //assignment within conditional expression
46    #pragma warning (disable : 4541) //'typeid' used on polymorphic type 'boost::exception' with /GR-
47    #pragma warning (disable : 4512) //'typeid' used on polymorphic type 'boost::exception' with /GR-
48 #endif
49
50 //#define BOOST_INTRUSIVE_USE_ITERATOR_FACADE
51 //#define BOOST_INTRUSIVE_USE_ITERATOR_ENABLE_IF_CONVERTIBLE