I am using Doxygen 1.8.5 and have the same problem as in the following question, only the C language, and the enums are in the C files:
Doxygen C # XML Comments: Multiply enum with the same name and different scope combined?
According to https://bugzilla.gnome.org/show_bug.cgi?id=522193 it was fixed in 1.6.0, but I assume that Doxygen does not treat different C files as having different namespaces.
These enumerations apply only to each specific file, but are called the same since they are used for the same purpose in this file (for example, for flags used to track information about the status of this module). The C compiler has no problems with this, but Doxygen combines them.
Example:
file1.c
enum status_flags {
sfACTIVE,
sfSHUTDOWN,
sfWARNING,
};
file2.c
enum status_flags {
sfSTANDBY,
sfSCREEN_OWNED,
};
The doxygen file will generate a single blob of both enumerations together, including comments for each member, and refer to them in the documentation for both files.
enum status_flags
Enumerator
sfACTIVE
sfSHUTDOWN
sfWARNING
sfSTANDBY
sfSCREEN_OWNED
The definition in line 42 of file1.c.
and
enum status_flags
Enumerator
sfACTIVE
sfSHUTDOWN
sfWARNING
sfSTANDBY
sfSCREEN_OWNED
The definition in line 65 of file2.c.
@addtogroup, , @file , , C. , , , . .
?