Doxygen сообщает «потенциальное рекурсивное отношение классов»

У меня есть шаблонный класс C ++ base :: Foo , а в другом файле у меня есть класс ] base :: bar :: Foo: общедоступная база :: Foo . Doxygen, похоже, не нравится, так как он выдает ошибку

<unknown>:1: Detected potential recursive class relation between class snLib::mocTwod::DsaCell and base class DsaCell< snLib::mocTwod::ProblemTraits, detLib::cellDiffusionTwod::ProblemTraits >!

Есть ли способ предотвратить это? В документации Doxygen не говорится ни об этой ошибке, ни о «потенциальных рекурсивных отношениях классов».

«Базовый» класс:

/*! \file snlib/DsaCell.hpp
 */
#ifndef snlib_DsaCell_hpp
#define snlib_DsaCell_hpp
#include "Dsa.hpp"

namespace snLib {
/*!
 * \brief  Implementation of naive cell-centered DSA
 */
template <class HoTraits_T, class LoTraits_T>
class DsaCell : public snLib::Dsa< HoTraits_T, LoTraits_T >
{
    [snip]
};
}
#endif

один из его потомков, вызывающий проблему:

/*! \file snlib/twod/moc/DsaCell.hpp
 */
#ifndef snlib_twod_moc_DsaCell_hpp
#define snlib_twod_moc_DsaCell_hpp
#include "snlib/DsaCell.hpp"

#include "ProblemTraits.hpp"
#include "detlib/twod/celldiffusion/ProblemTraits.hpp"

namespace snLib { namespace mocTwod {
/*!
 * \brief Inconsistent DSA for MOC
 */
class DsaCell : public snLib::DsaCell<
                        snLib::mocTwod::ProblemTraits,
                        detLib::cellDiffusionTwod::ProblemTraits
                        >
{
    [snip]
};
} } // end namespace snLib::mocTwod
#endif

Мой файл конфигурации Doxygen имеет множество параметров, включая конфигурацию пути: STRIP_FROM_PATH (установлен в корневой каталог), STRIP_FROM_INC_PATH (то же самое), INCLUDE_PATH (то же).

Редактировать: похоже, что ошибка действительно возникла в другом Doxyfile, который использовал теги XML, сгенерированные файлом с конфликтующим именем, поэтому проблема был связан с этим. В любом случае, я просто переименовал базовый класс во что-то другое, и все снова стало хорошо.

16
задан Seth Johnson 5 April 2011 в 16:04
поделиться