GNOME Bugzilla – Bug 406027
Templated class member specialization cannot be documented
Last modified: 2015-06-27 19:02:05 UTC
Hi! Here is a short example of a C++ templated class with a specialized member function: #include <iostream> template<typename T> class A { public: //! Default constructor A(): a(T(0)) {} //! Default destructor ~A() {} //! Set method void set(const T& a_in); private: T a; }; template<typename T> void A<T>::set(const T& a_in) { std::cout << "set(T)\n"; a = a_in; } //! Specialization of \c set() with \c int template<> void A<int>::set(const int& a_in); The problem is that the Doxygen have problems with documenting the specialized set() method. Here is the warning generated: /home/ediap/c_cpp/doxytest/test.h:57: Warning: Member set(const int &a_in) (function) of class A is not documented. The problem can be confirmed with Doxygen 1.4.7 and 1.5.1 (latest stable). Thanks for your help in solving this issue! BR, /Adam PS. Please find the attached source files (test.h, test.cc) and the Doxygen configuration used in this test.
Created attachment 82207 [details] Doxygen configuration file
Created attachment 82208 [details] test.h
Created attachment 82209 [details] test.cc
Same here, problem persists with the latest 1.8.3.1.
Fix was merged to the master (claims to be 1.8.9.1) https://github.com/doxygen/doxygen/commit/9e97f3ef6952ab981123448e897d5f28d66cd8bd
This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.8.10. 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).