------- Comment #4 from jason at gcc dot gnu dot org 2010-02-15 22:43 ------- Right, the stdcall attribute prevents us from using TYPE_CANONICAL, so it's not clear to useless_type_conversion that the type of &T::A is the same as P::F. Specifically, they are distinct because P::F uses a typedef for L, whereas T::A does not.
I guess we need to insert an explicit conversion, provide TYPE_CANONICAL even in the presence of strong attributes, or both. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43031