title: Typedef with and without struct name
body: <p>I saw the following oddity in the XCB API header. Most types are defined with a type alias and a struct name in this way:</p>
  
  <pre><code>typedef struct xcb_window_iterator_t {
      xcb_window_t *data;
      int rem;
      int index;
  } xcb_window_iterator_t;
  </code></pre>
  
  <p>But some typedefs omit the struct name.</p>
  
  <pre><code>typedef struct {
      unsigned int sequence;
  } xcb_void_cookie_t;
  </code></pre>
  
  <p>What does this mean from the C point of view?</p>
  
  <p>Is the latter a type with a name and a struct without a name? Or is it no type but only a struct with a name?</p>
  
  <p>My confusion comes from the output of the <code>gccxml</code>. </p>
  
  <p>For <code>xcb_window_iterator_t</code> it generates a <code>Struct</code> node:</p>
  
  <pre><code>$ xmllint --format --xpath '//Struct[@name="xcb_window_iterator_t"]' xcb.xml 
  &lt;Struct id="_199" name="xcb_window_iterator_t" context="_1" mangled="21xcb_window_iterator_t" demangled="xcb_window_iterator_t" location="f0:43" file="f0" line="43" artificial="1" size="128" align="64" members="_2240 _2241 _2242 _2243 _2244 _2245 _2246 " bases=""/&gt;
  </code></pre>
  
  <p>and a <code>Typedef</code> node:</p>
  
  <pre><code>$ xmllint --format --xpath '//Typedef[@name="xcb_window_iterator_t"]' xcb.xml 
  &lt;Typedef id="_200" name="xcb_window_iterator_t" type="_199" context="_1" location="f0:47" file="f0" line="47"/&gt;
  </code></pre>
  
  <p>But for <code>xcb_void_cookie_t</code> it generates just a <code>Struct</code> node:</p>
  
  <pre><code>$ xmllint --format --xpath '//Struct[@name="xcb_void_cookie_t"]' xcb.xml 
  &lt;Struct id="_967" name="xcb_void_cookie_t" context="_1" mangled="17xcb_void_cookie_t" demangled="xcb_void_cookie_t" location="f14:189" file="f14" line="189" size="32" align="32" members="_3655 _3656 _3657 _3658 _3659 " bases=""/&gt;
  </code></pre>
  
  <p>But no <code>Typedef</code> node:</p>
  
  <pre><code>$ xmllint --format --xpath '//Typedef[@name="xcb_void_cookie_t"]' xcb.xml 
  XPath set is empty
  </code></pre>
  
  <p>Does this mean <code>xcb_void_cookie_t</code> is no type but just a struct, although the code contains the <code>typedef</code>? Or is it a bug in <code>gccxml</code>?</p>