title: Issue due to porting in different gcc versions
body: <p>I have a C code in which I get an error in the third line:</p>
  
  <pre><code>struct in6_pktinfo *ptr;
  ptr = (struct in6_pktinfo *) CMSG_DATA (cmsgptr);
  *ifindex = ptr-&gt;ipi6_ifindex;
  
  
  ERROR: dereferrencing pointer to incomplete type
  </code></pre>
  
  <p>in case of <code>gcc 4.6/4.7</code> with centos/ubuntu distro, but not in case of <code>gcc 2.96</code> </p>
  
  <p>Now, how can I ascertain that this issue is due to gcc?</p>