void main() { int a[] = {1, 2}; int b[] = {[3]=3}; int c[2][3] = {1, 2, 3, 4, 5, 6}; struct foo { double x; int y; }; struct foo f = {.y=999}; typedef struct Interval { int left; int right; } Interval; typedef struct IntervalList { Interval value; Interval* next; } IntervalList; Interval result={.left = 2, .right = 3}; IntervalList list2 = {.value = result, .next = 0}; }