title: error "expression must have a constant value"
body: <p>When I am using const variables "a" &amp; "b" to init a structed variable "cfg" I am facing the following compiler issue "expression must have a constant value"</p>
  
  <pre><code>static const unsigned int a = 1;
  static const unsigned int b = 2;
  
  
  typedef struct
  {
      const uint32 InitTypestruct_elem1;   
      const uint32 InitTypestruct_elem2;   
  }InitType;
  
  typedef struct
  {
      InitType BoardTypestruct_elem1;
  }BoardType;
  
  
  static const BoardType cfg =
  {
      /* pbgc cfg */
      .BoardTypestruct_elem1 =
      {
          ***.InitTypestruct_elem1 = a,
          ***.InitTypestruct_elem2 = b
      }
  };
  
  
  const InitType *cfg(void)
  {
      return &amp;cfg.BoardTypestruct_elem1;
  }
  
  
  int main()
  {
      //cfg
  
      return 0;
  }
  </code></pre>
  
  <p>The compiler warning causes in the line with ***</p>
  
  <p>why this issue is happening? a and b are const values?</p>