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