我有一个 xc8 程序,我在其中预定义了 EEPROM:
__EEPROM_DATA (1, 2, 3, 4, 5, 6, 7, 8);
知道我喜欢 PC-Lint 在我的所有文件中忽略这样的表达式。
一种可能的方法是将以下内容添加到 .lnt 文件中
// activate _to_semi keyword
+rw(_to_semi)
// assign __EEPROM_DATA to "_to_semi" expression that means everything from
// "__EEPROM_DATA" until the next ";" will be ignored by PC-Lint
-d__EEPROM_DATA=_to_semi
您应该能够找到由您的 LINT 程序定义的 MACRO,它允许进行一些条件编译。例如,使用 SPLINT,您可以通过使用使其忽略 __EEPROM 调用
/*
* definitions to ease splint checking in non xc8 compiler.
*/
#ifndef S_SPLINT_S
__EEPROM_DATA (1, 2, 3, 4, 5, 6, 7, 8);
__EEPROM_DATA (1, 2, 3, 4, 5, 6, 7, 8);
__EEPROM_DATA (1, 2, 3, 4, 5, 6, 7, 8);
#endif
这样您就可以使用所有拆分检查,而不会收到有关 xc8/PIC 特定代码的警告。