1 /* { dg-options "-std=gnu89 -fms-extensions" } */
2 /* Enabling Microsoft mode makes all of the tests equivalent.  Checked vs
3    Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86
4  */
5 
6 struct A { char a; };
7 
8 struct B {
9   struct A;
10   char b;
11 };
12 char testB[sizeof(struct B) == 2 * sizeof(struct A) ? 1 : -1];
13 
14 struct C {
15   struct D { char d; };
16   char c;
17 };
18 char testC[sizeof(struct C) == 2 * sizeof(struct A) ? 1 : -1];
19 char testD[sizeof(struct D) == sizeof(struct A) ? 1 : -1];
20 
21 struct E {
22   struct { char z; };
23   char e;
24 };
25 char testE[sizeof(struct E) == 2 * sizeof(struct A) ? 1 : -1];
26 
27 typedef struct A typedef_A;
28 struct F {
29   typedef_A;
30   char f;
31 };
32 char testF[sizeof(struct F) == 2 * sizeof(struct A) ? 1 : -1];
33