This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 编译器/CCStudio-C2000:-Wundef 选项、用于在未定义预处理器参数时生成警告

Guru**** 3001220 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/921506/compiler-ccstudio-c2000--wundef-option-to-generate-a-warning-if-a-preprocessor-argument-is-not-defined

器件型号:CCSTUDIO-C2000

工具/软件:TI C/C++编译器

您好!

C2000编译器中是否有一个开关、用于在预处理器找到未定义的参数时生成警告?

示例

#IF (ARG_A = ARG_B)

如果未定义 ARG_A 和 ARG_B、则处理器转换

#if (0 = 0)-> true

使用#if Defined()是一种方法,但我必须将其添加到所有源模块中,这是一项漫长的工作。

我查看"高级语言"选项、但我没有找到解决方案。

谢谢你

此致

Giuseppe

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    使用编译器选项--ission_remarks。  这会导致编译器发出类似于...的诊断

    C:\work>cl2000 --issue_remarks file.c
    "file.c",第1行:备注:0用于未定义的预处理标识符"ARG_A"
    "file.c",第1行:备注:0用于未定义的预处理标识符"ARG_B" 

    要了解有关此选项的更多信息、请在 C2000编译器手册中搜索该选项。

    谢谢、此致、

    乔治

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我还发现了 MISRA-C_2004规则:

    选项19.11会检查所有预处理器宏标识符在使用之前是否必须定义。

    谢谢你

    此致

    Giuseppe