GNOME Bugzilla – Bug 533821
C# Generics classes implementing an interface are not corretly documented
Last modified: 2010-10-13 07:36:24 UTC
Consider the following example: /** \brief A namespace. */ namespace NS { /** \brief An interface. */ interface IfaceA { } /** \brief Generic implementation of IfaceA. */ public class ClassA<T> : IfaceA { } /** \brief Specialization of ClassA. */ public class ClassB : ClassA<long> { } /** \brief Concrete implementation of IfaceA. */ public class ClassC : IfaceA { } } ClassA is not documented and interface IfaceA is incorrectly documented: NS::IfaceA< T > An interface ClassB has not documented relation to ClassA. ClassC is OK.
Created attachment 111135 [details] Test file
Created attachment 111136 [details] Doxygen configuration file
Everything works fine in Doxygen version 1.5.7.1 * NS::IfaceA o NS::ClassA< long > + NS::ClassB o NS::ClassA< T > o NS::ClassC
This bug reappears in doxygen 1.5.8. The output from doxygen is now: This inheritance list is sorted roughly, but not completely, alphabetically: * NS::ClassB * NS::IfaceA o NS::ClassA< T > o NS::ClassC The correct output is the one produced by doxygen 1.5.7.1, see coment #3.
Doxygen versions 1.5.9 and 1.6.0 didn't fix the bug. The behavior is the same as in doxygen 1.5.8. Bug importance increased.
Doxygen version 1.7.0 still contains the bug. It produces the same output as version 1.5.8 •NS::ClassB •NS::IfaceA ◦NS::ClassA< T > ◦NS::ClassC The class NS::ClassB inherits from NS::ClassA<long>. It is not recognized by doxygen. Also ClassA specialization ClassA<long> is not recognized. Doxygen version 1.5.7.1 was able to recognize both. * NS::IfaceA o NS::ClassA< long > + NS::ClassB o NS::ClassA< T > o NS::ClassC
Confirmed. Sorry it took so long, but in the next release this problem should be corrected.
This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.7.1. 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.
Good day. This issue is similar/related to 583958 (Class diagrams and class hierarchy don't work for java generic classes: https://bugzilla.gnome.org/show_bug.cgi?id=583958), which is not currently assigned. I had attached a java source file (https://bugzilla.gnome.org/attachment.cgi?id=160795) for that bug that triggers the problem. I have confirmed it happened from versions 1.5.8 and up. How can I be of any assistance to help fixing it since it is of my interest this is resolved? Thank you very much.
This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.7.2. 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.
It works correctly for attached example as well as for my, much more complex, real case. Thanks a lot.