我需要能够在特定的 C 代码行上抑制 lint 警告,我想通过内联指令来实现。这是针对我要移植到 64 位的大量遗留代码,我宁愿将指令放在代码中,而不是放在运行 lint 的 Makefile 中,因为后者相当晦涩。
问题是 Solaris lint 文档只指定了如何针对少数警告类型执行此操作(据我所知)。
过去,使用下面的形式并且 Solaris 文档表明这仍然是允许的,但它似乎不起作用。使问题复杂化的是 Solaris lint 不提供错误编号,而是使用诸如 E_CAST_INT_TO_SMALL_INT 之类的标识符。
这是旧方法(代码中已经有很多这样的方法):
/*line -e511*/
最佳答案
Described in Lint Directives Section at this link
有两种内联方法可以抑制单行代码的 lint 警告 - 旧方法和推荐的新方法。
旧方法是使用 LINTED 注释:/*LINTED*/
新方法是使用 lint 宏:NOTE(LINTED (msg))
新方法还需要包含note.h。
关于c - 如何在代码中抑制 C 中的 Solaris lint 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31572339/