Namespaces can cause function declaration/definition mismatches.
Hi all. The attached sample code shows a problem whereby functions definitions and declarations are not matched properly when using namespaces. In particular, it seems that the matching depends on _how_ my classes and functions are inserted into a particular namespace. I found the following message in the archives, which seems to report a very similar problem ...
From: Carlos.Guerreiro@nokia.com To: doxygen-users@lists.sourceforge.net Date: Mon, 7 Jan 2002 16:29:10 +0200 Subject: [Doxygen-users] Problem with namespaces and templates
Hi,
I think I found a problem in Doxygen related to the matching between a functions's declaration and it's definition, when namespaces and templates are used:
//! This is a namespace. namespace MyNamespace { //! This is a friend function (will be matched). void foo1_friend(); //! This is another friend function (won't be matched). void foo2_friend(); } namespace MyNamespace { //! This is A class. class A { friend void foo1_friend(); }; } //! This is Another class, inserted in the namespace //! by using an alternative, legal syntax. class MyNamespace::Another { // Here the function foo2_friend() _has_ to be qualified // with the namespace. friend void MyNamespace::foo2_friend(); };
participants (1)
-
Enea Zaffanella