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 722654 - Inherited member of template class issues warning and is not documented
Inherited member of template class issues warning and is not documented
Status: VERIFIED FIXED
Product: doxygen
Classification: Other
Component: documentation
1.8.7
Other All
: Normal normal
: ---
Assigned To: Dimitri van Heesch
Dimitri van Heesch
Depends on:
Blocks:
 
 
Reported: 2014-01-20 21:15 UTC by J. P. Abelanet
Modified: 2016-09-06 20:24 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description J. P. Abelanet 2014-01-20 21:15:10 UTC
Doxygen 1.8.6 issues warnings about and does not document inherited members of template classes (this did not occur in 1.8.0):

/private/var/tmp/doxy_undoc_declaration_test/ERLB.h:8: warning: Member Contains(const Fred *entity) const (function) of class EntityReferenceListBase< Fred > is not documented.

Below is a simple example which fails using the auto-generated Doxyfile.

------------------------------

/**
    This is the base class...
*/
template <class T>
class EntityReferenceListBase {

public:
  inline bool Contains (const T *entity) const;
};


template <class T>
inline bool EntityReferenceListBase<T>::Contains (const T *entity) const
/**
    This routine determines if an Entity is in a list of Entities.
*/
{
}



/**
    This is the derived class...
*/
class EntityReferenceList: public EntityReferenceListBase<Fred> {
};


}
Comment 1 J. P. Abelanet 2014-01-20 21:17:08 UTC
Note that this works if the member is defined (and documented) in the body of the template class, rather than outside it.
Comment 2 J. P. Abelanet 2014-06-22 14:25:32 UTC
Verified that this does not work in 1.8.7.

This is a real problem as it affects most of the documentation of a large project we have.
Comment 3 J. P. Abelanet 2015-12-22 18:16:07 UTC
This still occurs with 1.8.10.  Would you mind taking a look at this?  Thanks.
Comment 4 albert 2015-12-24 13:00:41 UTC
Looks to me that this problem has been solved by the last updates in github.

I think this bug report can be set to ASSIGNED
Comment 5 J. P. Abelanet 2015-12-29 21:01:30 UTC
Just tried 1.8.11 via git, and the problem is worse.  It no longer complains, but the inherited public methods do not appear *at all* now.
Comment 6 Dimitri van Heesch 2016-01-09 15:35:51 UTC
Confirmed. Should be fixed in the next GIT update.
Comment 7 J. P. Abelanet 2016-01-11 16:18:00 UTC
Just did a git pull and clean build, and I still get this:

/Users/jp/GE/BUGS/1574/ERLB.h:8: warning: Member Contains(const Fred *entity) const (function) of class EntityReferenceListBase< Fred > is not documented.

Did I miss something when updating via git?
Comment 8 albert 2016-01-11 17:55:43 UTC
There has not been an git updated yet (only a pull request has been added to git)
Comment 9 J. P. Abelanet 2016-01-11 18:02:12 UTC
I apologize - I don't use git on a regular basis.
Comment 10 J. P. Abelanet 2016-01-18 16:49:33 UTC
Confirmed that 1.8.12 (git) now fixes the problem - thanks.
Comment 11 Dimitri van Heesch 2016-09-05 13:45:57 UTC
This bug was previously marked ASSIGNED, which means it should be fixed in
doxygen version 1.8.12. 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 (preferably in the form of a self-contained example).
Comment 12 J. P. Abelanet 2016-09-06 20:24:25 UTC
Verified - thanks!