https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101677
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Status|UNCONFIRMED |NEW
Last reconfirmed| |2021-07-30
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
>This bug can be worked around by using a complete type instead when defining
>the concept.
It does not even have to be complete type; just defined before.
So adding:
class S;
at the begining causes GCC to accept the code.