【问题标题】:Using lint comments with doxygen使用 doxygen 的 lint 注释
【发布时间】:2013-01-01 06:58:21
【问题描述】:

对于文档,我们通常必须创建一个附加文档来描述在代码 (e.g. /* lint --e228) 中禁用任何 lint 消息时我们所做的事情。 与doxygen 一起使用它会更容易(因为我们无论如何都会创建它)。

不过,我无法找到任何解决方案来说明如何使用这些 lint cmets 制作 doxygen。 有人试过这个吗? 有什么解决方案如何使用stric '/*lint',但无论如何将其添加到doxygen

谢谢!

【问题讨论】:

  • 这是 Lint 还是 PC-Lint?

标签: c documentation doxygen lint comments


【解决方案1】:

这可以通过定义一个宏来扩展为 lint 表达式注释来实现,但在扩展 doxygen 时使宏扩展为不同的注释。

诀窍是使用-save 指令来 PC-lintTM 或 FlexeLintTM

#ifndef LINT_CONTROL
#define LINT_CONTROL(X) /*lint -save X */ //lint X
#endif

int main () {
    int a; LINT_CONTROL(-e530)
    return a != a;
}

然后,在您的doxygen 配置文件中,您可以启用某些预处理器宏的扩展。特别是,我们可以将LINT_CONTROL 改为扩展为doxygen-ated 注释。

ENABLE_PREPROCESSING   = YES
MACRO_EXPANSION        = YES
EXPAND_ONLY_PREDEF     = YES
PREDEFINED             = "LINT_CONTROL(X)=//! lint control: X"

或者,如果您有 FlexeLintTM,那么您可以修改遮蔽源,以便可以使用 doxygen 注释来触发 lint 控制。 Gimpel Software Discussion Forum 上描述了该技术。 (此链接似乎已失效,新的讨论论坛似乎不再包含引用的讨论。)

PC-lint 和 FlexeLint 是 Gimpel Software 的商标。

【讨论】:

    猜你喜欢
    • 2012-02-28
    • 2011-01-30
    • 1970-01-01
    • 2011-09-05
    • 2023-03-27
    • 2019-02-13
    • 1970-01-01
    • 2023-03-12
    • 2018-01-18
    相关资源
    最近更新 更多