1 /* C99 recursive struct/union initialization */ 2 struct top { 3 int i; 4 char c; 5 union onion { 6 short us; 7 char uc; 8 } u; 9 char *s; 10 } c[] = { 11 { .s = "foo", .c = 'b', .u = { .uc = 'c' } }, 12 { .i = 1, .c = 'a', .u = { .us = 2 } }, 13 }; 14