【问题标题】:How to get rid of strange doxygen warning如何摆脱奇怪的 doxygen 警告
【发布时间】:2013-11-07 14:56:05
【问题描述】:

当运行 doxygen 在一个包含许多文件(我认为所有文件都完整记录)的特定相当大的 C 语言项目上时,我总是在输出的底部找到这个警告:

<@1>:1: warning: parameters of member @1 are not (all) documented

如何找到并删除此警告的触发器?

请注意,对于二分法或其他基于试错法的搜索方法而言,所讨论的项目太大(而且问题不够重要)。

【问题讨论】:

  • 请原谅这个明显的问题,但我可以假设您已经在相同的代码库中搜索了 @1 并没有找到任何实例吗?
  • 是的,我有。事实上,数字会有所不同(取决于预处理器定义):有时消息是关于成员 @2 的。两者都不存在于项目中(它不是有效的 C 代码)。其他人之前也遇到过这个问题:sourceforge.net/mailarchive/message.php?msg_id=29249389

标签: doxygen


【解决方案1】:

意识到这是一个老问题,但我自己只是遇到了这种行为,并没有在网上找到解决方案。

通过运行 Doxygen 并查看错误消息在输出中出现的位置找到了有问题的文件(确保您没有抑制标准输出,否则您只会得到没有上下文的错误)。

在我的情况下,错误出现在“为组 [name] 生成依赖关系图”行之后。通过查看相关文件,我发现了一个未记录的、未命名的枚举。枚举的成员仍然被记录在案。例如

enum
{
    X = 1, /**< Documented. */
    ...
}

我猜是枚举中缺少名称导致了 Doxygen 的抛出并导致了无用的消息。添加名称会导致生成更多有用的错误消息。记录枚举(带或不带名称)可以消除错误。

【讨论】:

    猜你喜欢
    • 2017-01-25
    • 1970-01-01
    • 1970-01-01
    • 2010-10-23
    • 2016-02-04
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多