The option that's taken in typical GNU code, when this problem occurs, is to have an optional macro that, when defined, causes initializations to be added that suffice to pacify GCC. Normally the macro is not defined, but people who want to compile cleanly can define it.
In other gnu packages this macro is typically named 'lint'. We may have to pick a name beginning with YY for namespace cleanliness.
