Compare commits

...

15 Commits

Author SHA1 Message Date
Robert Ramey
4076d5bda0 Changes made over the course of the year while 1.34 was being worked on
[SVN r38695]
2007-08-15 18:48:18 +00:00
Robert Ramey
de549910c0 Create branch for next serialization release
[SVN r38613]
2007-08-13 03:23:47 +00:00
nobody
49858c1ac4 This commit was manufactured by cvs2svn to create tag
'Version_1_34_1'.

[SVN r38286]
2007-07-24 19:28:14 +00:00
Andreas Huber
ec6dfefa6e Corrected wrong order in copyright notices.
[SVN r36240]
2006-12-02 10:04:37 +00:00
Andreas Huber
1df1d181c0 Merged a copyright addition from trunk to branch.
[SVN r36231]
2006-12-01 14:28:43 +00:00
Andreas Huber
dc34adabef Merged L & C issue fixes from trunk to branch.
[SVN r36225]
2006-12-01 11:34:43 +00:00
John Maddock
8aebcc4fbd Updated patch from Boris Gubenko.
[SVN r35672]
2006-10-20 10:08:21 +00:00
John Maddock
2551c9baf0 Fix for HP-UX on Itanium.
[SVN r35591]
2006-10-13 17:08:47 +00:00
John Maddock
71ec49242e Added 64-bit Intel processor support.
[SVN r35587]
2006-10-13 12:40:40 +00:00
Dave Abrahams
0dc54e7b18 Kill off stray 'y' character.
[SVN r35530]
2006-10-09 12:29:34 +00:00
Dave Abrahams
4039b44fce Fix typos.
[SVN r35503]
2006-10-06 15:22:30 +00:00
Dave Abrahams
2f7218cdc4 Make is_reference_to_pointer work properly with an abstract class
[SVN r35498]
2006-10-05 13:51:07 +00:00
Peter Dimov
37cd3c6dd2 Windows CE patch by Michael Fink
[SVN r33986]
2006-05-17 22:33:47 +00:00
Dave Abrahams
71a268689d merged from trunk
[SVN r33868]
2006-04-30 03:05:01 +00:00
nobody
4dda81e93a This commit was manufactured by cvs2svn to create branch 'RC_1_34_0'.
[SVN r33417]
2006-03-21 02:26:31 +00:00
6 changed files with 87 additions and 17 deletions

View File

@@ -1,3 +1,8 @@
// Copyright 2005 Caleb Epstein
// Copyright 2006 John Maddock
// Distributed under the Boost Software License, Version 1.0. (See accompany-
// ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
/* /*
* Copyright (c) 1997 * Copyright (c) 1997
* Silicon Graphics Computer Systems, Inc. * Silicon Graphics Computer Systems, Inc.
@@ -37,9 +42,15 @@
# error Unknown machine endianness detected. # error Unknown machine endianness detected.
# endif # endif
# define BOOST_BYTE_ORDER __BYTE_ORDER # define BOOST_BYTE_ORDER __BYTE_ORDER
#elif defined(_BIG_ENDIAN)
# define BOOST_BIG_ENDIAN
# define BOOST_BYTE_ORDER 4321
#elif defined(_LITTLE_ENDIAN)
# define BOOST_LITTLE_ENDIAN
# define BOOST_BYTE_ORDER 1234
#elif defined(__sparc) || defined(__sparc__) \ #elif defined(__sparc) || defined(__sparc__) \
|| defined(_POWER) || defined(__powerpc__) \ || defined(_POWER) || defined(__powerpc__) \
|| defined(__ppc__) || defined(__hppa) \ || defined(__ppc__) || defined(__hpux) \
|| defined(_MIPSEB) || defined(_POWER) \ || defined(_MIPSEB) || defined(_POWER) \
|| defined(__s390__) || defined(__s390__)
# define BOOST_BIG_ENDIAN # define BOOST_BIG_ENDIAN
@@ -47,7 +58,11 @@
#elif defined(__i386__) || defined(__alpha__) \ #elif defined(__i386__) || defined(__alpha__) \
|| defined(__ia64) || defined(__ia64__) \ || defined(__ia64) || defined(__ia64__) \
|| defined(_M_IX86) || defined(_M_IA64) \ || defined(_M_IX86) || defined(_M_IA64) \
|| defined(_M_ALPHA) || defined(_M_ALPHA) || defined(__amd64) \
|| defined(__amd64__) || defined(_M_AMD64) \
|| defined(__x86_64) || defined(__x86_64__) \
|| defined(_M_X64)
# define BOOST_LITTLE_ENDIAN # define BOOST_LITTLE_ENDIAN
# define BOOST_BYTE_ORDER 1234 # define BOOST_BYTE_ORDER 1234
#else #else

View File

@@ -0,0 +1,29 @@
// (C) Copyright Matthias Troyerk 2006.
// 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_DETAIL_HAS_DEFAULT_CONSTRUCTOR_HPP_INCLUDED
#define BOOST_DETAIL_HAS_DEFAULT_CONSTRUCTOR_HPP_INCLUDED
#include <boost/type_traits/has_trivial_constructor.hpp>
namespace boost { namespace detail {
/// type trait to check for a default constructor
///
/// The default implementation just checks for a trivial constructor.
/// Using some compiler magic it might be possible to provide a better default
template <class T>
struct has_default_constructor
: public has_trivial_constructor<T>
{};
} } // namespace boost::detail
#endif // BOOST_DETAIL_HAS_DEFAULT_CONSTRUCTOR_HPP_INCLUDED

View File

@@ -388,27 +388,27 @@ typename is_pointer_help<V>::type reference_to_pointer_helper(V&);
outer_no_type reference_to_pointer_helper(...); outer_no_type reference_to_pointer_helper(...);
template <class T> template <class T>
struct is_reference_to_pointer struct reference_to_pointer_impl
{ {
static T t; static T t;
BOOST_STATIC_CONSTANT( BOOST_STATIC_CONSTANT(
bool, value bool, value
= (is_reference<T>::value = (sizeof((reference_to_pointer_helper)(t)) == sizeof(inner_yes_type))
&& sizeof((reference_to_pointer_helper)(t)) == sizeof(inner_yes_type))
); );
typedef mpl::bool_<value> type; typedef mpl::bool_<value> type;
};
template <class T>
struct is_reference_to_pointer
: mpl::eval_if<is_reference<T>, reference_to_pointer_impl<T>, mpl::false_>::type
{
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_pointer,(T)) BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_pointer,(T))
}; };
template <class T> template <class T>
struct is_reference_to_function_pointer struct is_reference_to_function_pointer
: mpl::if_< : mpl::eval_if<is_reference<T>, is_pointer_to_function_aux<T>, mpl::false_>::type
is_reference<T>
, is_pointer_to_function_aux<T>
, mpl::bool_<false>
>::type
{ {
BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_function_pointer,(T)) BOOST_MPL_AUX_LAMBDA_SUPPORT(1,is_reference_to_function_pointer,(T))
}; };

View File

@@ -31,6 +31,22 @@
# define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER InterlockedCompareExchangePointer # define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER InterlockedCompareExchangePointer
# define BOOST_INTERLOCKED_EXCHANGE_POINTER InterlockedExchangePointer # define BOOST_INTERLOCKED_EXCHANGE_POINTER InterlockedExchangePointer
#elif defined(_WIN32_WCE)
// under Windows CE we still have old-style Interlocked* functions
extern "C" long __cdecl InterlockedIncrement( long* );
extern "C" long __cdecl InterlockedDecrement( long* );
extern "C" long __cdecl InterlockedCompareExchange( long*, long, long );
extern "C" long __cdecl InterlockedExchange( long*, long );
extern "C" long __cdecl InterlockedExchangeAdd( long*, long );
# define BOOST_INTERLOCKED_INCREMENT InterlockedIncrement
# define BOOST_INTERLOCKED_DECREMENT InterlockedDecrement
# define BOOST_INTERLOCKED_COMPARE_EXCHANGE InterlockedCompareExchange
# define BOOST_INTERLOCKED_EXCHANGE InterlockedExchange
# define BOOST_INTERLOCKED_EXCHANGE_ADD InterlockedExchangeAdd
#elif defined( BOOST_MSVC ) || defined( BOOST_INTEL_WIN ) #elif defined( BOOST_MSVC ) || defined( BOOST_INTEL_WIN )
extern "C" long __cdecl _InterlockedIncrement( long volatile * ); extern "C" long __cdecl _InterlockedIncrement( long volatile * );
@@ -44,18 +60,25 @@ extern "C" long __cdecl _InterlockedExchangeAdd( long volatile *, long);
# pragma intrinsic( _InterlockedCompareExchange ) # pragma intrinsic( _InterlockedCompareExchange )
# pragma intrinsic( _InterlockedExchange ) # pragma intrinsic( _InterlockedExchange )
# pragma intrinsic( _InterlockedExchangeAdd ) # pragma intrinsic( _InterlockedExchangeAdd )
# if defined(_M_IA64) || defined(_M_AMD64) # if defined(_M_IA64) || defined(_M_AMD64)
extern "C" void* __cdecl _InterlockedCompareExchangePointer( void* volatile *, void*, void* ); extern "C" void* __cdecl _InterlockedCompareExchangePointer( void* volatile *, void*, void* );
extern "C" void* __cdecl _InterlockedExchangePointer( void* volatile *, void* ); extern "C" void* __cdecl _InterlockedExchangePointer( void* volatile *, void* );
# pragma intrinsic( _InterlockedCompareExchangePointer ) # pragma intrinsic( _InterlockedCompareExchangePointer )
# pragma intrinsic( _InterlockedExchangePointer ) # pragma intrinsic( _InterlockedExchangePointer )
# define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER _InterlockedCompareExchangePointer # define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER _InterlockedCompareExchangePointer
# define BOOST_INTERLOCKED_EXCHANGE_POINTER _InterlockedExchangePointer # define BOOST_INTERLOCKED_EXCHANGE_POINTER _InterlockedExchangePointer
# else # else
# define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(dest,exchange,compare) \ # define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(dest,exchange,compare) \
((void*)BOOST_INTERLOCKED_COMPARE_EXCHANGE((long volatile*)(dest),(long)(exchange),(long)(compare))) ((void*)BOOST_INTERLOCKED_COMPARE_EXCHANGE((long volatile*)(dest),(long)(exchange),(long)(compare)))
# define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \ # define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \
((void*)BOOST_INTERLOCKED_EXCHANGE((long volatile*)(dest),(long)(exchange))) ((void*)BOOST_INTERLOCKED_EXCHANGE((long volatile*)(dest),(long)(exchange)))
# endif # endif
# define BOOST_INTERLOCKED_INCREMENT _InterlockedIncrement # define BOOST_INTERLOCKED_INCREMENT _InterlockedIncrement
@@ -77,6 +100,7 @@ extern "C" __declspec(dllimport) long __stdcall InterlockedDecrement( long volat
extern "C" __declspec(dllimport) long __stdcall InterlockedCompareExchange( long volatile *, long, long ); extern "C" __declspec(dllimport) long __stdcall InterlockedCompareExchange( long volatile *, long, long );
extern "C" __declspec(dllimport) long __stdcall InterlockedExchange( long volatile *, long ); extern "C" __declspec(dllimport) long __stdcall InterlockedExchange( long volatile *, long );
extern "C" __declspec(dllimport) long __stdcall InterlockedExchangeAdd( long volatile *, long ); extern "C" __declspec(dllimport) long __stdcall InterlockedExchangeAdd( long volatile *, long );
} // namespace detail } // namespace detail
} // namespace boost } // namespace boost
@@ -86,6 +110,7 @@ extern "C" __declspec(dllimport) long __stdcall InterlockedExchangeAdd( long vol
# define BOOST_INTERLOCKED_COMPARE_EXCHANGE ::boost::detail::InterlockedCompareExchange # define BOOST_INTERLOCKED_COMPARE_EXCHANGE ::boost::detail::InterlockedCompareExchange
# define BOOST_INTERLOCKED_EXCHANGE ::boost::detail::InterlockedExchange # define BOOST_INTERLOCKED_EXCHANGE ::boost::detail::InterlockedExchange
# define BOOST_INTERLOCKED_EXCHANGE_ADD ::boost::detail::InterlockedExchangeAdd # define BOOST_INTERLOCKED_EXCHANGE_ADD ::boost::detail::InterlockedExchangeAdd
# define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(dest,exchange,compare) \ # define BOOST_INTERLOCKED_COMPARE_EXCHANGE_POINTER(dest,exchange,compare) \
((void*)BOOST_INTERLOCKED_COMPARE_EXCHANGE((long volatile*)(dest),(long)(exchange),(long)(compare))) ((void*)BOOST_INTERLOCKED_COMPARE_EXCHANGE((long volatile*)(dest),(long)(exchange),(long)(compare)))
# define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \ # define BOOST_INTERLOCKED_EXCHANGE_POINTER(dest,exchange) \

View File

@@ -4,13 +4,15 @@
#ifndef IS_INCREMENTABLE_DWA200415_HPP #ifndef IS_INCREMENTABLE_DWA200415_HPP
# define IS_INCREMENTABLE_DWA200415_HPP # define IS_INCREMENTABLE_DWA200415_HPP
# include <boost/type_traits/detail/bool_trait_def.hpp>
# include <boost/type_traits/detail/template_arity_spec.hpp> # include <boost/type_traits/detail/template_arity_spec.hpp>
# include <boost/type_traits/remove_cv.hpp> # include <boost/type_traits/remove_cv.hpp>
# include <boost/mpl/aux_/lambda_support.hpp> # include <boost/mpl/aux_/lambda_support.hpp>
# include <boost/mpl/bool.hpp> # include <boost/mpl/bool.hpp>
# include <boost/detail/workaround.hpp> # include <boost/detail/workaround.hpp>
// Must be the last include
# include <boost/type_traits/detail/bool_trait_def.hpp>
namespace boost { namespace detail { namespace boost { namespace detail {
// is_incrementable<T> metafunction // is_incrementable<T> metafunction
@@ -117,5 +119,6 @@ BOOST_TT_AUX_TEMPLATE_ARITY_SPEC(1, ::boost::detail::is_postfix_incrementable)
} // namespace boost } // namespace boost
# include <boost/type_traits/detail/bool_trait_undef.hpp>
#endif // IS_INCREMENTABLE_DWA200415_HPP #endif // IS_INCREMENTABLE_DWA200415_HPP

View File

@@ -1,9 +1,7 @@
// Copyright <20> 2001 Ronald Garcia, Indiana University (garcia@osl.iu.edu) // Copyright <20> 2001 Ronald Garcia, Indiana University (garcia@osl.iu.edu)
// Andrew Lumsdaine, Indiana University (lums@osl.iu.edu). Permission to copy, // Andrew Lumsdaine, Indiana University (lums@osl.iu.edu).
// use, modify, sell and distribute this software is granted provided this // Distributed under the Boost Software License, Version 1.0. (See accompany-
// copyright notice appears in all copies. This software is provided "as is" // ing file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// without express or implied warranty, and with no claim as to its suitability
// for any purpose.
#ifndef BOOST_UTF8_CODECVT_FACET_HPP #ifndef BOOST_UTF8_CODECVT_FACET_HPP
#define BOOST_UTF8_CODECVT_FACET_HPP #define BOOST_UTF8_CODECVT_FACET_HPP