https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677
--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- In C90, arrays of incomplete types are forbidden because incomplete types are not (before C11) object types. See footnote 17 in subclause 6.1.2.5. In C99 this becomes a constraint in 6.7.5.2#1.