111
|
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];
|