GNOME Bugzilla – Bug 600829
linking to typedefs, enums, enum values, and variables in namespaces
Last modified: 2015-01-30 17:34:31 UTC
Linking to typedefs, enums, enum values, and variables in namespaces does not work as expected. Consider this example: -------------------------------------------- /// \file /// namespace N namespace N { /// typedef T typedef int T; /// enum E enum E { V = 0 //!< enum value V }; /// global variable G int G; } // namespace N /// typdef: #N::T, ::N::T, N::T /// enum: #N::E, ::N::E, N::E /// enum value: #N::V, ::N::V, N::V /// global variable: #N::G, ::N::G, N::G int main (int argc, char* argv[]) { return 0; } -------------------------------------------- I would prefer to use explicit links (# or :: prefix) to get warnings when these items get renamed. But that does not work: 1. The link tests with # and :: prefix do not generate any link. The third link test in each row (without # or :: prefix) does generate a link. I would expect that all of them (or at least the first two) generated a link. 2. The first test (# prefix) generates a warning which I do not understand since it works without prefix. 3. The second test (:: prefix) does not even generate a warning. The problem is related to the namespace. Without namespaces everything works as expected. I also haven't noticed any such problems with classes, member functions, and (global) functions.
This bug still exists with doxygen 1.6.3. I wonder about the importance of this bug (for me it is quite annoying). Is it considered less important than other bugs that get fixed, or does it require a large amount of work?
Hi Joachim, I've found the problem. Should be corrected in the next release.
This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.7.0. 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.