【发布时间】:2018-01-16 08:14:47
【问题描述】:
我们在 DSP 的内联汇编中有一个文件。 Cppcheck 认为程序集中存在大量“已分配但未使用的变量”行。
有没有办法让它跳过检查内联汇编部分?手册里看不到任何明显的东西,而且不得不依次压制每一行有点繁琐(t
以下是一些违规行的示例。这是一个上下文保存例程。
inline assembly void save_ctx()
{
asm_begin
.undef global data saved_ctx;
.undef global data p_ctx;
asm_text
...
st XM[p0++], r0;
st XM[p0++], r1;
st XM[p0++], r2;
st XM[p0++], r3;
st XM[p0++], r4;
st XM[p0++], r5;
st XM[p0++], r6;
...
我可以关闭消息 // cppcheck-抑制 unreadVariable 在每一行之前,但最好只告诉 cppcheck 跳过整个内联汇编部分。
我有什么办法可以做到这一点,还是我们只需要接受很多重复的 cmets?
【问题讨论】:
-
看来您应该可以使用
-D或-U。如果您将您的 asm 包装在#ifndef cppcheck中,那么我希望-Dcppcheck跳过它。 -
@DavidWohlferd 谢谢。真的很明显 - 只见树木不见森林。