diff options
author | Remko Tronçon <git@el-tramo.be> | 2011-03-14 18:35:17 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2011-03-14 18:35:17 (GMT) |
commit | a135c6ff4dcded5661a2321512960b14cf8c15c8 (patch) | |
tree | b0017ecfe702304f592b9d4e8b943784cff26fb2 /3rdParty/Boost/src/boost/multi_index/detail/unbounded.hpp | |
parent | 02d6188ab335e6c62b8341b84579d9549d215118 (diff) | |
download | swift-a135c6ff4dcded5661a2321512960b14cf8c15c8.zip swift-a135c6ff4dcded5661a2321512960b14cf8c15c8.tar.bz2 |
Updated Boost to 1.46.1.
This should hopefuily fix a hang on shutdown on Mac OS X.
Resolves: #782
Release-Notes: Fixed a potential hang on shutdown on Mac OS X.
Diffstat (limited to '3rdParty/Boost/src/boost/multi_index/detail/unbounded.hpp')
-rw-r--r-- | 3rdParty/Boost/src/boost/multi_index/detail/unbounded.hpp | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/3rdParty/Boost/src/boost/multi_index/detail/unbounded.hpp b/3rdParty/Boost/src/boost/multi_index/detail/unbounded.hpp deleted file mode 100644 index 40c3034..0000000 --- a/3rdParty/Boost/src/boost/multi_index/detail/unbounded.hpp +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright 2003-2008 Joaquin M Lopez Munoz. - * Distributed under 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/multi_index for library home page. - */ - -#ifndef BOOST_MULTI_INDEX_DETAIL_UNBOUNDED_HPP -#define BOOST_MULTI_INDEX_DETAIL_UNBOUNDED_HPP - -#if defined(_MSC_VER)&&(_MSC_VER>=1200) -#pragma once -#endif - -#include <boost/config.hpp> /* keep it first to prevent nasty warns in MSVC */ -#include <boost/detail/workaround.hpp> - -namespace boost{ - -namespace multi_index{ - -/* dummy type and variable for use in ordered_index::range() */ - -#if BOOST_WORKAROUND(BOOST_MSVC,<1300) -/* The default branch actually works for MSVC 6.0, but seems like - * this implementation of unbounded improves the performance of ordered - * indices! This behavior is hard to explain and probably a test artifact, - * but it does not hurt to have the workaround anyway. - */ - -namespace detail{struct unbounded_type{};} - -namespace{ - -static detail::unbounded_type unbounded_obj=detail::unbounded_type(); -static detail::unbounded_type& unbounded=unbounded_obj; - -} /* unnamed */ -#else -/* ODR-abiding technique shown at the example attached to - * http://lists.boost.org/Archives/boost/2006/07/108355.php - */ - -namespace detail{class unbounded_helper;} - -detail::unbounded_helper unbounded(detail::unbounded_helper); - -namespace detail{ - -class unbounded_helper -{ - unbounded_helper(){} - unbounded_helper(const unbounded_helper&){} - friend unbounded_helper multi_index::unbounded(unbounded_helper); -}; - -typedef unbounded_helper (*unbounded_type)(unbounded_helper); - -} /* namespace multi_index::detail */ - -inline detail::unbounded_helper unbounded(detail::unbounded_helper) -{ - return detail::unbounded_helper(); -} -#endif - -/* tags used in the implementation of range */ - -namespace detail{ - -struct none_unbounded_tag{}; -struct lower_unbounded_tag{}; -struct upper_unbounded_tag{}; -struct both_unbounded_tag{}; - -} /* namespace multi_index::detail */ - -} /* namespace multi_index */ - -} /* namespace boost */ - -#endif |