Chris@102: ////////////////////////////////////////////////////////////////////////////// Chris@102: // Chris@102: // (C) Copyright Ion Gaztanaga 2014-2014. Distributed under the Boost Chris@102: // Software License, Version 1.0. (See accompanying file Chris@102: // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) Chris@102: // Chris@102: // See http://www.boost.org/libs/container for documentation. Chris@102: // Chris@102: ////////////////////////////////////////////////////////////////////////////// Chris@102: Chris@102: #ifndef BOOST_CONTAINER_DETAIL_STD_FWD_HPP Chris@102: #define BOOST_CONTAINER_DETAIL_STD_FWD_HPP Chris@102: Chris@102: #ifndef BOOST_CONFIG_HPP Chris@102: # include Chris@102: #endif Chris@102: Chris@102: #if defined(BOOST_HAS_PRAGMA_ONCE) Chris@102: # pragma once Chris@102: #endif Chris@102: Chris@102: ////////////////////////////////////////////////////////////////////////////// Chris@102: // Standard predeclarations Chris@102: ////////////////////////////////////////////////////////////////////////////// Chris@102: Chris@102: #if defined(__clang__) && defined(_LIBCPP_VERSION) Chris@102: #define BOOST_CONTAINER_CLANG_INLINE_STD_NS Chris@102: #pragma GCC diagnostic push Chris@102: #pragma GCC diagnostic ignored "-Wc++11-extensions" Chris@102: #define BOOST_CONTAINER_STD_NS_BEG _LIBCPP_BEGIN_NAMESPACE_STD Chris@102: #define BOOST_CONTAINER_STD_NS_END _LIBCPP_END_NAMESPACE_STD Chris@102: #elif defined(BOOST_GNU_STDLIB) && defined(_GLIBCXX_BEGIN_NAMESPACE_VERSION) //GCC >= 4.6 Chris@102: #define BOOST_CONTAINER_STD_NS_BEG namespace std _GLIBCXX_VISIBILITY(default) { _GLIBCXX_BEGIN_NAMESPACE_VERSION Chris@102: #define BOOST_CONTAINER_STD_NS_END _GLIBCXX_END_NAMESPACE_VERSION } // namespace Chris@102: #elif defined(BOOST_GNU_STDLIB) && defined(_GLIBCXX_BEGIN_NAMESPACE) //GCC >= 4.2 Chris@102: #define BOOST_CONTAINER_STD_NS_BEG _GLIBCXX_BEGIN_NAMESPACE(std) Chris@102: #define BOOST_CONTAINER_STD_NS_END _GLIBCXX_END_NAMESPACE Chris@102: #else Chris@102: #define BOOST_CONTAINER_STD_NS_BEG namespace std{ Chris@102: #define BOOST_CONTAINER_STD_NS_END } Chris@102: #endif Chris@102: Chris@102: BOOST_CONTAINER_STD_NS_BEG Chris@102: Chris@102: template Chris@102: class allocator; Chris@102: Chris@102: template Chris@102: struct less; Chris@102: Chris@102: template Chris@102: struct pair; Chris@102: Chris@102: template Chris@102: struct char_traits; Chris@102: Chris@102: struct input_iterator_tag; Chris@102: struct forward_iterator_tag; Chris@102: struct bidirectional_iterator_tag; Chris@102: struct random_access_iterator_tag; Chris@102: Chris@102: template Chris@102: class insert_iterator; Chris@102: Chris@102: struct allocator_arg_t; Chris@102: Chris@102: BOOST_CONTAINER_STD_NS_END Chris@102: Chris@102: #ifdef BOOST_CONTAINER_CLANG_INLINE_STD_NS Chris@102: #pragma GCC diagnostic pop Chris@102: #undef BOOST_CONTAINER_CLANG_INLINE_STD_NS Chris@102: #endif //BOOST_CONTAINER_CLANG_INLINE_STD_NS Chris@102: Chris@102: #endif //#ifndef BOOST_CONTAINER_DETAIL_STD_FWD_HPP