$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Tobias Schwinger (tschwinger_at_[hidden])
Date: 2007-08-01 19:10:03
Andrey Semashev wrote:
> I'm surprised too. I always though that T U::* and T (U::*)() are
> very different types. I didn't find in the Standard any notes that they
> are the same.
A common misconception invented by the authors of GCC, I guess ;-).
With MSVC, the type expression 'U C::*' deduced from a member function
pointer T (with default options) will surprisingly yields a type
incompatible to T (as member functions are implicitly __thiscall
attributed, where U C::* becomes __cdecl, because U is the type of a
freestanding function and __thiscall only exists for member functions).
Regards,
Tobias