xref: /aosp_15_r20/external/clang/test/PCH/designated-init.c.h (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li static void *FooToken = &FooToken;
2*67e74705SXin Li static void *FooTable[256] = {
3*67e74705SXin Li     [0x3] = (void *[256]) { // 1
4*67e74705SXin Li         [0x5b] = (void *[256]) { // 2
5*67e74705SXin Li             [0x81] = (void *[256]) { // 3
6*67e74705SXin Li                 [0x42] = (void *[256]) { // 4
7*67e74705SXin Li                     [0xa2] = (void *[256]) { // 5
8*67e74705SXin Li                         [0xe] = (void *[256]) { // 6
9*67e74705SXin Li                             [0x20] = (void *[256]) { // 7
10*67e74705SXin Li                                 [0xd7] = (void *[256]) { // 8
11*67e74705SXin Li                                     [0x39] = (void *[256]) { // 9
12*67e74705SXin Li                                         [0xf1] = (void *[256]) { // 10
13*67e74705SXin Li                                             [0xa4] = (void *[256]) { // 11
14*67e74705SXin Li                                                 [0xa8] = (void *[256]) { // 12
15*67e74705SXin Li                                                     [0x21] = (void *[256]) { // 13
16*67e74705SXin Li                                                         [0x86] = (void *[256]) { // 14
17*67e74705SXin Li                                                             [0x1d] = (void *[256]) { // 15
18*67e74705SXin Li                                                                 [0xdc] = (void *[256]) { // 16
19*67e74705SXin Li                                                                     [0xa5] = (void *[256]) { // 17
20*67e74705SXin Li                                                                         [0xef] = (void *[256]) { // 18
21*67e74705SXin Li                                                                             [0x9] = (void *[256]) { // 19
22*67e74705SXin Li                                                                                 [0x34] = &FooToken,
23*67e74705SXin Li                                                                             },
24*67e74705SXin Li                                                                         },
25*67e74705SXin Li                                                                     },
26*67e74705SXin Li                                                                 },
27*67e74705SXin Li                                                             },
28*67e74705SXin Li                                                         },
29*67e74705SXin Li                                                     },
30*67e74705SXin Li                                                 },
31*67e74705SXin Li                                             },
32*67e74705SXin Li                                         },
33*67e74705SXin Li                                     },
34*67e74705SXin Li                                 },
35*67e74705SXin Li                             },
36*67e74705SXin Li                         },
37*67e74705SXin Li                     },
38*67e74705SXin Li                 },
39*67e74705SXin Li             },
40*67e74705SXin Li         },
41*67e74705SXin Li     }
42*67e74705SXin Li };
43*67e74705SXin Li 
44*67e74705SXin Li struct P1 {
45*67e74705SXin Li     struct Q1 {
46*67e74705SXin Li       char a[6];
47*67e74705SXin Li       char b[6];
48*67e74705SXin Li     } q;
49*67e74705SXin Li };
50*67e74705SXin Li 
51*67e74705SXin Li struct P1 l1 = {
52*67e74705SXin Li     (struct Q1){ "foo", "bar" },
53*67e74705SXin Li                .q.b = { "boo" },
54*67e74705SXin Li                .q.b = { [1] = 'x' }
55*67e74705SXin Li };
56*67e74705SXin Li 
57*67e74705SXin Li extern struct Q1 *foo();
test_foo()58*67e74705SXin Li static struct P1 test_foo() {
59*67e74705SXin Li   struct P1 l = { *foo(),
60*67e74705SXin Li                   .q.b = { "boo" },
61*67e74705SXin Li                   .q.b = { [1] = 'x' }
62*67e74705SXin Li                 };
63*67e74705SXin Li   return l;
64*67e74705SXin Li }
65