diff --git a/include/turtle/detail/expectation_template.hpp b/include/turtle/detail/expectation_template.hpp index 3c5b461..a4f14a0 100644 --- a/include/turtle/detail/expectation_template.hpp +++ b/include/turtle/detail/expectation_template.hpp @@ -165,22 +165,22 @@ namespace detail expectation& with( BOOST_PP_ENUM_BINARY_PARAMS(MOCK_NUM_ARGS, Constraint_, c) ) { - matcher_ = - boost::make_shared< single_matcher< + matcher_.reset( + new single_matcher< void( BOOST_PP_ENUM_PARAMS(MOCK_NUM_ARGS, Constraint_) ), void( BOOST_PP_ENUM_PARAMS(MOCK_NUM_ARGS, T) ) - > >( - BOOST_PP_ENUM_PARAMS(MOCK_NUM_ARGS, c) ); + >( BOOST_PP_ENUM_PARAMS(MOCK_NUM_ARGS, c) ) ); return *this; } #if MOCK_NUM_ARGS > 1 template< typename Constraint > expectation& with( const Constraint& c ) { - matcher_ = - boost::make_shared< multi_matcher< + matcher_.reset( + new multi_matcher< Constraint, - void( BOOST_PP_ENUM_PARAMS(MOCK_NUM_ARGS, T) ) > >( c ); + void( BOOST_PP_ENUM_PARAMS(MOCK_NUM_ARGS, T) ) + >( c ) ); return *this; } #endif