From f6e0916dbda8d1d6713a9df0710f62374e5fd2d7 Mon Sep 17 00:00:00 2001 From: mat007 Date: Mon, 10 Oct 2011 21:40:24 +0000 Subject: [PATCH] Enhanced error message for ambiguous_mock_method git-svn-id: https://svn.code.sf.net/p/turtle/code/trunk@387 860be788-9bd5-4423-9f1e-828f051e677b --- src/libraries/turtle/mock.hpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/libraries/turtle/mock.hpp b/src/libraries/turtle/mock.hpp index e95a11d..bc1c6a0 100644 --- a/src/libraries/turtle/mock.hpp +++ b/src/libraries/turtle/mock.hpp @@ -25,6 +25,8 @@ #include #define BOOST_TYPEOF_SILENT #include +#include +#include #include namespace mock @@ -87,6 +89,9 @@ namespace detail typedef T base_type; }; } + + template< typename T > + T& invalid_pointer_to_member( const T& t ); } #define MOCK_BASE_CLASS(T, I) \ @@ -114,7 +119,7 @@ namespace detail } #define MOCK_SIGNATURE(M) \ - mock::detail::signature< BOOST_TYPEOF(&base_type::M) >::type + mock::detail::signature< BOOST_TYPEOF( mock::invalid_pointer_to_member( &base_type::M ) ) >::type #define MOCK_METHOD_STUB(M, n, S, t, c, tpn) \ MOCK_DECL(M, n, S, c, tpn) \