GNOME Bugzilla – Bug 597415
Regression, valid documentation not accepted
Last modified: 2009-12-30 13:38:37 UTC
Created attachment 144788 [details] Source files showing the regression In the recent 1.6.1 valid documentation (at least I think it's correct, please note if and why not) causes warnings. Doxygen 1.5.8 accepted this without a problem. This is on Fedora 11. I have attached a tarball with source files documenting the problem. Here the verbal description: - Class A is a pure virtual class with do_something(A &a), it is member of the namespace N - do_something(A &a) takes an instance of A as argument - Class B inherits from A, but is *not* member of the namespace N, therefore it must read: class B : public N::A {... do_something(N::A &a); ... }. Now the documentation is rejected, because it seems not to properly map N::A onto the class A in namespace N. Even if I remove the qualifier in B's do_something (making a forward declaration in the namespace) gives an error if I split the implementation into a .cpp file. In that case it says "no uniquely matching class member found". In this case class_B.cpp had a "using namespace N" clause, which seems to make doxygen again search for the qualified version of do_something(). To me this looks like a bug and since it worked as expected 1.5.8 like a regression. Or was that intended? What's the recommended code structure then?
For a real-life occurrence of this problem do: git co git://git.fawkesrobotics.org/fawkes.git cd fawkes make quickdoc
Confirmed. Should be fixed in the next subversion update.
This bug was previously marked ASSIGNED, which means it should be fixed in doxygen version 1.6.2. Please verify if this is indeed the case and reopen the bug if you think it is not fixed (include any additional information that you think can be relevant).