Name some anonymous structs to avoid using a (very common) extension.

llvm-svn: 286152
diff --git a/clang/lib/CodeGen/CGCall.h b/clang/lib/CodeGen/CGCall.h
index 11c427e..031ce83 100644
--- a/clang/lib/CodeGen/CGCall.h
+++ b/clang/lib/CodeGen/CGCall.h
@@ -73,16 +73,19 @@
       Last = PseudoDestructor
     };
 
+    struct BuiltinInfoStorage {
+      const FunctionDecl *Decl;
+      unsigned ID;
+    };
+    struct PseudoDestructorInfoStorage {
+      const CXXPseudoDestructorExpr *Expr;
+    };
+
     SpecialKind KindOrFunctionPointer;
     union {
       CGCalleeInfo AbstractInfo;
-      struct {
-        const FunctionDecl *Decl;
-        unsigned ID;
-      } BuiltinInfo;
-      struct {
-        const CXXPseudoDestructorExpr *Expr;
-      } PseudoDestructorInfo;
+      BuiltinInfoStorage BuiltinInfo;
+      PseudoDestructorInfoStorage PseudoDestructorInfo;
     };
 
     explicit CGCallee(SpecialKind kind) : KindOrFunctionPointer(kind) {}