forked from boostorg/fusion
Optimizing for RVO
[SVN r35249]
This commit is contained in:
@ -31,10 +31,10 @@ namespace boost { namespace fusion
|
||||
|
||||
call(First const&, Last const&)
|
||||
{
|
||||
static typename mpl::minus<
|
||||
typedef typename mpl::minus<
|
||||
typename Last::index, typename First::index>::type
|
||||
result;
|
||||
return result;
|
||||
return result();
|
||||
}
|
||||
};
|
||||
};
|
||||
|
@ -35,8 +35,7 @@ namespace boost { namespace fusion
|
||||
static type
|
||||
call(Iterator const& i)
|
||||
{
|
||||
static type result;
|
||||
return result;
|
||||
return type();
|
||||
}
|
||||
};
|
||||
};
|
||||
|
@ -34,11 +34,11 @@ namespace boost { namespace fusion
|
||||
, typename Last::iterator_type>::type
|
||||
call(First const&, Last const&)
|
||||
{
|
||||
static typename mpl::distance<
|
||||
typedef typename mpl::distance<
|
||||
typename First::iterator_type
|
||||
, typename Last::iterator_type>::type
|
||||
result;
|
||||
return result;
|
||||
return result();
|
||||
}
|
||||
};
|
||||
};
|
||||
|
@ -35,8 +35,7 @@ namespace boost { namespace fusion
|
||||
static type
|
||||
call(Iterator)
|
||||
{
|
||||
static type result;
|
||||
return result;
|
||||
return type();
|
||||
}
|
||||
};
|
||||
};
|
||||
|
@ -29,10 +29,10 @@ namespace boost { namespace fusion
|
||||
typename Last::index, typename First::index>::type
|
||||
call(First const&, Last const&)
|
||||
{
|
||||
static typename mpl::minus<
|
||||
typedef typename mpl::minus<
|
||||
typename Last::index, typename First::index>::type
|
||||
result;
|
||||
return result;
|
||||
return result();
|
||||
}
|
||||
};
|
||||
};
|
||||
|
Reference in New Issue
Block a user