https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69701
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Last reconfirmed| |2021-12-03 Keywords| |accepts-invalid Status|UNCONFIRMED |NEW --- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Here is a different testcase which shows we also have an accepts invalid: class A {}; class B { typedef int AT; public: operator AT () const noexcept { return {}; } typedef int A; }; int main() { B b; b.operator A(); } I have not looked up in the standard which A is supposed to be found here (for b.operator A) is it B::A or ::A?