http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17729
Iain Sandoe <iains at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #20407|0 |1 is obsolete| | --- Comment #24 from Iain Sandoe <iains at gcc dot gnu.org> 2012-02-01 10:18:58 UTC --- Created attachment 26539 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26539 rebased patch This rebased to r183760. Hm. What pr50308 shows is that it's not just about eliminating a duplicate messages, but also about where the test is done. I.E. late enough in the proceedings that overloading and ADL are accounted. Perhaps this patch could be re-considered on that basis (IIUC, Jason's proposed amendment was to replace this change with a hash table recording the fact that we had already emitted a warning and thus suppressing subsequent ones) [see the thread referred above for details]. Clearly just recording the fact we've emitted a warning doesn't help if that warning should not have been emitted in the first place. This patch does NOT fix PR50308 (so, there is either another problem or we are still not making the test in the right place). The patch still fixes the current PR (17729). It might be that it can be amended to deal with PR50308 as well - don't have any time available right now to look. Otherwise, I don't think I know the c++ FE well enough to suggest a better place to put the test.