I noticed another parsing speciality: In c++ "typedef enum" and "enum" is equally valid code. Gtags-parser handles them differently. Furthermore, I would suggest that the type names of enums are "tags" not "symbols", at least, if "--typedef" is given ("--typedef: Pick up not only function but also typedef name and enum member as a definition."). Probably, some of items apply to the C parser as well. For an example, see below.