title: C - Field has incomplete type
body: <p>In the below representation,</p>
  
  <pre><code>struct Cat{
    char *name;
    struct Cat mother;
    struct Cat *children;
  };
  </code></pre>
  
  <hr>
  
  <p>Compiler gives below error for second field, but not third field,</p>
  
  <pre><code> error: field ‘mother’ has incomplete type
     struct Cat mother;
                ^
  </code></pre>
  
  <hr>
  
  <p>How to understand this error?</p>