I believe the bit in question is in gen_decl_die, at the FIELD_DECL
case, and the check DECL_NAME (decl) != NULL_TREE. This could perhaps
depend on the existing flag_eliminate_unused_debug_types. You should
check to see how much extra debug info this emits. If this starts
emitting debug info for unnamed C++ vtable fields that no one cares
about, then we might need additional checks to get just the C language
unnamed structure fields that you want. If this doesn't emit much extra
info, then it might be reasonable to do it by default.