[Bug c/81677] Can't declare pointer to array of incomplete type in struct

2017-08-02 Thread chris.ol...@iti-global.com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677 --- Comment #7 from chris.ol...@iti-global.com --- I'm not arguing that arrays declarations should be allowed to derive from incomplete types, nor all pointers-to-array of incomplete type be allowed; I'm specifically arguing that a struct should b

[Bug c/81677] Can't declare pointer to array of incomplete type in struct

2017-08-02 Thread joseph at codesourcery dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677 --- Comment #6 from joseph at codesourcery dot com --- On Wed, 2 Aug 2017, chris.ol...@iti-global.com wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677 > > --- Comment #4 from chris.ol...@iti-global.com --- > (In reply to jos...@codes

[Bug c/81677] Can't declare pointer to array of incomplete type in struct

2017-08-02 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677 Andrew Pinski changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug c/81677] Can't declare pointer to array of incomplete type in struct

2017-08-02 Thread chris.ol...@iti-global.com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677 --- Comment #4 from chris.ol...@iti-global.com --- (In reply to jos...@codesourcery.com from comment #3) > Because the type doesn't exist, I don't know what you mean by a type that "doesn't exist". A declared but undefined struct is incomplete bu

[Bug c/81677] Can't declare pointer to array of incomplete type in struct

2017-08-02 Thread joseph at codesourcery dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677 --- Comment #3 from joseph at codesourcery dot com --- There is no such thing as an array type whose element is incomplete - you can't construct, or describe, such a type in C at all, and attempts to do so have undefined behavior in C90, are co

[Bug c/81677] Can't declare pointer to array of incomplete type in struct

2017-08-02 Thread chris.ol...@iti-global.com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677 --- Comment #2 from chris.ol...@iti-global.com --- This isn't an array of incomplete type, but a pointer-to-array of incomplete type; not just any incomplete type, but struct that is guaranteed to be complete when the outermost } is encountered. A

[Bug c/81677] Can't declare pointer to array of incomplete type in struct

2017-08-02 Thread joseph at codesourcery dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81677 --- Comment #1 from 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.