On 16/07/2012 02:11, Kjell Ahlstedt wrote: >> >> > Thanks. > I haven't tested it (and will probably not do it) but it seems quite reasonable. > I suppose it will also require some calls to BOOST_TYPEOF_REGISTER_TEMPLATE. No it doesn't. Here's my full test-case: //------------------------------- #include <iostream> #include <boost/type_traits.hpp> #include <sigc++/sigc++.h> namespace sigc { template <typename Functor> struct functor_trait<Functor, false> { typedef BOOST_TYPEOF_TPL (sigc::mem_fun (boost::declval<Functor&> (), &Functor::operator())) _intermediate; typedef typename _intermediate::result_type result_type; typedef Functor functor_type; }; } struct Foo { bool operator() () { std::cout << "Hello world!" << std::endl; } }; int main () { sigc::slot<bool> slot = Foo (); slot (); return 0; } //------------------------------- -- Kind regards, Loong Jin
Attachment:
signature.asc
Description: OpenPGP digital signature