title: accessing struct: derefrencing pointer to incomplete type
body: <p>When I'm trying to use and access the pointers to my structs i keep getting the annoying message of <code>"dereferencing pointer to incomplete type"</code> ....</p>
  
  <p>For example in my <code>user.h</code> file I have this <code>typedef</code>:</p>
  
  <pre><code>typedef struct FacebookUser_t* User;
  </code></pre>
  
  <p>and in my <code>user.c</code> file which includes <code>user.h</code> I have this struct:</p>
  
  <pre><code>struct FacebookUser_t {...}; 
  </code></pre>
  
  <p><br/>
  So when I need a pointer to that struct I only use <code>User blabla;</code>
  it seems to work, and I add it to generic list as <code>Element</code> which is <code>void*</code> and that's the typedef for it in <code>list.h</code>:</p>
  
  <pre><code>typedef void* Element;
  </code></pre>
  
  <p>and when I get back a node from the list which contains <code>Element</code> (<code>User</code>) I can't access it's members, what I'm doing wrong? Thanks!</p>