After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 739210 - C++11 scoped enums with same name inside different classes are merged if using tagfile [with test case]
C++11 scoped enums with same name inside different classes are merged if usin...
Status: RESOLVED FIXED
Product: doxygen
Classification: Other
Component: general
1.8.8-GIT
Other All
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
Depends on:
Blocks:
 
 
Reported: 2014-10-26 15:23 UTC by Vladimír Vondruš
Modified: 2014-12-25 16:03 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Repro/test case (789 bytes, application/zip)
2014-10-26 15:23 UTC, Vladimír Vondruš
Details

Description Vladimír Vondruš 2014-10-26 15:23:51 UTC
Created attachment 289351 [details]
Repro/test case

See attached ZIP file for minimal repro case. Generate the tagfile and process it using the following commands:

    doxygen Doxyfile.original
    doxygen Doxyfile.current

The first command generates `original.tag` file, the second parses it and produces HTML docs. The documentation for `B::Flag` enum contains members from `A::Flag` enum (`ReadOnly`), but it shouldn't, as the enums are in completely different scope.

This doesn't happen when using C++03 unscoped enums (`enum Flag`) or when the enums aren't class members (e.g. one part of namespace A, one part of namespace B). It also doesn't happen when both struct A and struct B are parsed as part of one project, so it seems that the needed information is not parsed properly from the tagfile.

Tested with current Git (a31c9ff), but the issue appears for some time (I think it was present already in 1.7).
Comment 1 Dimitri van Heesch 2014-12-22 19:19:02 UTC
Confirmed. Should be fixed in the next GIT update.
Comment 2 Dimitri van Heesch 2014-12-25 16:03:30 UTC
This bug was previously marked ASSIGNED, which means it should be fixed in
doxygen version 1.8.9. Please verify if this is indeed the case. Reopen the
bug if you think it is not fixed and please include any additional information 
that you think can be relevant (preferrably in the form of a self-contained example).