On 10/11/2017 05:14 AM, Nathan Sidwell wrote: > On 10/04/2017 03:40 PM, Martin Sebor wrote: >> On 09/28/2017 08:25 AM, Nathan Sidwell wrote: > > >> Since the original tests (where the resolver returns void*) pass >> across the board I assume it must work for all supported ABIs. >> Or is there some subtlety between the before and after code that >> I'm missing? > > I had a vague notion of some (IBM?) target that might do something > different. Perhaps it's gone. Your comment explains it fine. > >>> oh, I think it's trying to spot the pointer to NON-static member >>> function internal record type. But brokenly. I think pmf record_types >>> have DECL_ARTIFICIAL and BUILTIN_LOCATION, that might be useful. >> >> It turns out this code was superfluous with the C++ correction >> and I was able to remove it with no impact on the tests. > > Great. > >>> Is this function called before we know whether we've enabled the >>> appropriate warnings? It would be better to bail out sooner if the >>> warnings are disabled. >> >> I'm not sure I understand the question or suggestion here but >> warnings in general are certainly enabled at this point. The >> function issues both errors and warnings so it can't very well >> exit early without checking the compatibility. Let me know if >> I misunderstood your comment. > > Oh, forgot it issued errors too, so my queston is moot. > >> -signedness. >> +signedness. In C++ where incompatible pointer conversions ordinarily >> cause > Missing comma: In C++, where incompatible ... > >> +errors, the warning detects such conversions in GCC extensions that >> aren't >> +part of the standard language. An example of a construct that might >> perform >> +such a conversion is the @code{alias} attribute. @xref{Function >> Attributes,,Declaring Attributes of Functions}. > > Looks fine to me. (pedantically, I don't think I can formally approve > this, because it's not part of the C++ FE.) That's good enough for me :-) So I'll make it an official ACK.
jeff