https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117177
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Ah, the problem is in the trailing comma before }. Because CPP_EMBED guarantees a CPP_NUMBER CPP_COMMA before it and CPP_COMMA CPP_NUMBER after it, this new code wanted to do the same, because clearly we don't derive the right size if the last CONSTRUCTOR_ELT is RAW_DATA_CST. But it is wrong to check just that next token is CPP_COMMA for the arrays of unspecified width, it really needs to be CPP_COMMA followed by CPP_NUMBER.