diff options
Diffstat (limited to 'src/third_party/boost-1.60.0/boost/type_traits/add_const.hpp')
-rw-r--r-- | src/third_party/boost-1.60.0/boost/type_traits/add_const.hpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/third_party/boost-1.60.0/boost/type_traits/add_const.hpp b/src/third_party/boost-1.60.0/boost/type_traits/add_const.hpp new file mode 100644 index 00000000000..a9fb781c789 --- /dev/null +++ b/src/third_party/boost-1.60.0/boost/type_traits/add_const.hpp @@ -0,0 +1,46 @@ + +// (C) Copyright Dave Abrahams, Steve Cleary, Beman Dawes, Howard +// Hinnant & John Maddock 2000. +// Use, modification and distribution are subject to the Boost Software License, +// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt). +// +// See http://www.boost.org/libs/type_traits for most recent version including documentation. + +#ifndef BOOST_TT_ADD_CONST_HPP_INCLUDED +#define BOOST_TT_ADD_CONST_HPP_INCLUDED + +#include <boost/type_traits/detail/config.hpp> + +namespace boost { + +// * convert a type T to const type - add_const<T> +// this is not required since the result is always +// the same as "T const", but it does suppress warnings +// from some compilers: + +#if defined(BOOST_MSVC) +// This bogus warning will appear when add_const is applied to a +// const volatile reference because we can't detect const volatile +// references with MSVC6. +# pragma warning(push) +# pragma warning(disable:4181) // warning C4181: qualifier applied to reference type ignored +#endif + + template <class T> struct add_const + { + typedef T const type; + }; + +#if defined(BOOST_MSVC) +# pragma warning(pop) +#endif + + template <class T> struct add_const<T&> + { + typedef T& type; + }; + +} // namespace boost + +#endif // BOOST_TT_ADD_CONST_HPP_INCLUDED |