mirror of
https://github.com/boostorg/mpl.git
synced 2025-08-05 15:54:39 +02:00
Borland workaround
[SVN r16281]
This commit is contained in:
@@ -21,22 +21,31 @@
|
|||||||
#include "boost/mpl/begin_end.hpp"
|
#include "boost/mpl/begin_end.hpp"
|
||||||
#include "boost/mpl/distance.hpp"
|
#include "boost/mpl/distance.hpp"
|
||||||
#include "boost/mpl/aux_/traits_lambda_spec.hpp"
|
#include "boost/mpl/aux_/traits_lambda_spec.hpp"
|
||||||
|
#include "boost/config.hpp"
|
||||||
|
|
||||||
namespace boost {
|
namespace boost {
|
||||||
namespace mpl {
|
namespace mpl {
|
||||||
|
|
||||||
// default implementation; conrete sequences might override it by
|
// default implementation; conrete sequences might override it by
|
||||||
// specializing either the |size_traits| or the primary |size| template
|
// specializing either the 'size_traits' or the primary 'size' template
|
||||||
|
|
||||||
template< typename Tag >
|
template< typename Tag >
|
||||||
struct size_traits
|
struct size_traits
|
||||||
{
|
{
|
||||||
template< typename Sequence > struct algorithm
|
template< typename Sequence > struct algorithm
|
||||||
|
#if !defined(__BORLANDC__) && (__BORLANDC__ <= 0x561 || !defined(BOOST_STRICT_CONFIG))
|
||||||
: distance<
|
: distance<
|
||||||
typename begin<Sequence>::type
|
typename begin<Sequence>::type
|
||||||
, typename end<Sequence>::type
|
, typename end<Sequence>::type
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
|
#else
|
||||||
|
{
|
||||||
|
typedef typename distance<
|
||||||
|
typename begin<Sequence>::type
|
||||||
|
, typename end<Sequence>::type
|
||||||
|
>::type type;
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user