>Why does a warning prevent code from building?
A warning prevents building because it causes GCC to ignore that whole
declaration, causing a massive cascade of errors. But, yes, after looking
up more particular information on "anonymous unions", it is a feature of
the C++ standard, not of the C standard, though as much as I have read, the
standard does not restrict that behavior, it seems it was just a change of
mind of the GCC developers to disable this behavior for C code. Sad
really, since it improves the readability of code greatly.
- Clint Smullen