Link to function with the same name in a different namespace

Viewed 66

I have two functions with the same name in a different namespace:

xt::xtensor<double, 2> GMatTensor::Cartesian2d::I4d();

and

template <class T>
void GMatTensor::Cartesian2d::pointer::I4d(T* A);

In the documentation of GMatTensor::Cartesian2d::pointer::I4d I want to link to GMatTensor::Cartesian2d::I4d. But how do I do that?

I tried in the docstring of GMatTensor::Cartesian2d::pointer::I4d:

  • I4d()
  • Cartesiand2d::I4d()
  • GMatTensor::Cartesiand2d::I4d()

In each case a link is produced, but always to GMatTensor::Cartesian2d::pointer::I4d and not to the intended GMatTensor::Cartesian2d::I4d


Minimal reproducible example:

/**
\file mylib.h
*/

namespace GMatTensor {
namespace Cartesian2d {

/**
Lorem ipsum.

\return [2, 2, 2, 2] array.
*/
inline xt::xtensor<double, 4> I4d();

namespace pointer {

    /**
    See Cartesian2d::I4d()

    \param ret output 2nd order tensor
    */
    template <class T>
    inline void I4d(T* ret);

} // namespace pointer
} // namespace Cartesian2d
} // namespace GMatTensor

with Doxyfile

IMPUT = .

(I ran with doxygen 1.9.1)


Edit I filed a bug report: https://github.com/doxygen/doxygen/issues/8403

0 Answers
Related