title: Nested structures/arrays initialization
body: <p>I have a structure that contains an arrays of another structure, it looks something like this:</p>
  
  <pre><code>
  typedef struct bla Bla;
  typedef struct point Point;
  
  struct point
  {
      int x, y;
  };
  
  struct bla
  {
      int another_var;
      Point *foo;
  };
  </code></pre>
  
  <p>I now want to initialize them in the global scope. They are intended as description of a module. I tried to do that with c99 compound literals, but the compiler (gcc) didn't like it:</p>
  
  <pre><code>
  Bla test =
  {
      0, (Point[]) {(Point){1, 2}, (Point){3, 4}}
  };
  </code></pre>
  
  <p>I get the following errors:</p>
  
  <pre>
  error: initializer element is not constant
  error: (near initialization for 'test')
  </pre>
  
  <p>Since I don't need to modify it I can put as many "const" in it as necessary. Is there a way to compile it?</p>