Hi,

I have encountered the problem with the Doxygen parser for the following 
code:

// HEADER FILE: 'test.h'

#ifndef HLIDAC_PES_TEST_H
#define HLIDAC_PES_TEST_H

#include <vector>
#include <utility>

struct T {
         void f(const std::vector<void*>& v);
         void f(const std::pair<double, double>& p);
};

#endif

// SOURCE FILE: 'test.cpp'
#include "test.h"

using namespace std;

void T::f(const vector<void*>& v)       { }

void T::f(const pair<double, double>& p) { }


If you generate the documentation (BUILTIN_STL_SUPPORT is set to YES), 
then you get the following warning:

Searching for member function documentation...
.../test/test.cpp:7: warning: no matching class member found for
   void T::f(const pair< double, double > &p)
Possible candidates:
   void T::f(const std::vector< void *> &v)
   void T::f(const std::pair< double, double > &p)

The problem does not occur if:

- The namespace 'std' is explicitly stated in cpp file.

- If overloading is not used, i.e. each function has a different name.


Questions:

Is there a way how to deal with this issue without being inconsistent?

Is this a real bug or warning can be ignored?


Thank you for your help,

best regards, Libor Bukata.





------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Doxygen-users mailing list
Doxygen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/doxygen-users

Reply via email to