http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53055
Manuel López-Ibáñez <manu at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |manu at gcc dot gnu.org --- Comment #6 from Manuel López-Ibáñez <manu at gcc dot gnu.org> 2012-10-11 17:55:50 UTC --- Sorry, I think your message is not easily understandable. I think you are trying to say that "the right hand side must be a pointer-to-member", but this is not actually what your proposed message says. I like more clang's message: /tmp/webcompile/_28618_0.cc:4:11: error: right hand operand to ->* has non pointer-to-member type 'void ()' int i = p ->* f ; ^ ~ I am not saying that you need to print the type or fix the location (it would be nice but I understand it is quite extra work, and could be done later). But the text could say: "type of right-side operand of %<->*%> is not pointer-to-member", or "right-side operand of %<->*%> has non pointer-to-member type" or "right-side operand of %<->*%> must have pointer-to-member type".