Here are several things that are not wise to do when working with GTK-Doc:

  • Have an enum called XfceMenuLayoutMergeType and a function ending with get_layout_merge_type(). This will only make GTK-Doc think that XfceMenuLayoutMergeType is a GObject class and then it will try to inspec the results of that function you have. In the end GTK-Doc will crash with a segmentation fault when running the scanner.
  • Have an XfceMenuNodeType enum, this time wrapped by a GType, and a GObject class called XfceMenuNode. If the GType function for XfceMenuNodeType is called xfce_menu_node_type_get_type() GTK-Doc will confuse it with the GType function for XfceMenuNode and thus, generate wrong API docs.
  • Have a class called XfceMenu and a library intialization function called xfce_menu_init(). GTK-Doc will always throw these two into one section because it thinks they are related.

Bad.