我需要能够在 C 代码的特定行上抑制 lint 警告,并且我想使用内联指令来做到这一点。这是针对我要移植到 64 位的大量遗留代码,我更愿意将指令放在代码中,而不是放在运行 lint 的 Makefile 中,因为后者非常晦涩。
问题是 Solaris lint 文档仅针对几种警告类型指定了如何执行此操作(据我所知)。
过去,使用了以下形式,Solaris 文档建议这仍然是允许的,但它似乎不起作用。使问题复杂化的是 Solaris lint 不提供错误编号,而是使用 E_CAST_INT_TO_SMALL_INT 等标识符。
这是旧方法(代码中已经有很多这样的方法):
/*line -e511*/