https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117490
--- Comment #3 from uecker at gcc dot gnu.org --- Ah, your are right. The declared type rules makes it valid. I forgot about it because it is never explicitly used for anything, but here it makes a difference.