GNOME Bugzilla – Bug 659249
Add an option for typedefs to be directly linked from parameter list of a function.
Last modified: 2013-01-03 10:06:26 UTC
Created attachment 196722 [details] Example documented code. Typedefs are often used to "assign" a simple name for a complex template with many parameters. This typedef can have its own helpful documentation. Currently if a function takes a parameters which is a typedef of another type then the link in this parameter points to typedefed class instead to a typedef. This is useful option, but sometimes it would be better to actually force doxygen to link the parameter to the typedef. Like in attached example - I would like to have in `my_simple_func(Simple my_simple)' Simple pointing to typedef, not to ComplicatedTemplatedClass. Maybe that would be solved by adding a general option to Doxyfile like LINK_TO_TYPEDEF (default NO) which would force such behavior and maybe \typedef_link to allow fine-grained control which typedefs should not be omitted in linking.
Have you tried using the latest version of Doxygen? Changing bug type to enhancement as it appears to involve adding a feature to Doxygen.
(In reply to comment #1) > Have you tried using the latest version of Doxygen? I have just tested 1.7.4 and it has the same behavior. > Changing bug type to enhancement as it appears to involve adding a feature to > Doxygen. Ah, yes, it should be marked as such from the start. Thanks.
I am fairly sure that this is a change of behaviour. I believe that the links used to take people to our typedefs, which we document with doxygen comments.
This is a duplicate of bug 584194, which has been fixed in doxygen 1.7.5. I have checked with the test case in comment 0. In "void my_simple_func(Simple my_simple);" doxygen 1.7.4 links Simple to ComplicatedTemplatedClass. Doxygen 1.7.5 and those later versions which I have tested, link Simple to the typedef where Simple is defined. The fix to bug 584194 does not involve any new doxygen configuration tag or markup command, as suggested in comment 0. It links unconditionally to the typedef. That should be a good enough solution for the problem described in the gtkmm bug 657844, which gave rise to this bug. *** This bug has been marked as a duplicate of bug 584194 ***