https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118387
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Note, for the second testcase, what happened is that when we synthetize the
defaulted operator <=>, we indeed construct that static cast as required in the
standard and figure out it is invalid, but we do so with complain = tf_none,
i.e. no errors/warnings are reported.  For all other possible problems during
synthesization the function is marked as deleted and if/when we try to explain
why it is deleted, we diagnose errors during its synthesization.  Just in this
case it actually isn't marked as deleted.
So, I wonder if it isn't omission of the standard and it should have a sentence
about this case as well, or what else should be done instead.

Reply via email to