Reapply r107235, this time with both my typo fixed, and a logical bug fixed.
Previously we relied on the presence of a member which needs no initialization
to prevent us from creating an additional initialization of the outer anonymous
union field. We have already correctly marked that field as initialized by the
member of the union (repeatedly due to the original bug this patch fixes) so we
simply need to bail out.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107242
91177308-0d34-0410-b5e6-
96231b3b80d8