https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94061

Frank Heckenbach <f.heckenb...@fh-soft.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |f.heckenb...@fh-soft.de

--- Comment #1 from Frank Heckenbach <f.heckenb...@fh-soft.de> ---
I ran into the same problem.

Interestingly, clang also seems to reject it, so maybe it is wrong by the
letter of the standard? Though it would seem strange to me -- after all, when
manually implementing B::operator<=> a protected operator in A will do fine.

I hope someone who knows the standard more intimately can confirm whether
that's so and possibly open a defect report to the standard.

Fun fact: When I independently created a minimal test program, my result was
exactly identical to yours (modulo whitespace), including the names of the
structs. :)

Reply via email to