// a is initialized using a compound literal to define // a literal array. The array is converted to pointer to int. void main() { int *a = (int[]){ [2] = 3 }; // int *b = { [2] = 3 }; // wrong a[1]=1; }