【问题标题】:What causes this missing whitespace after the macro name error?是什么导致宏名称错误后缺少空格?
【发布时间】:2016-07-22 14:55:21
【问题描述】:

我正在使用 MPLAB X v3.35 为 PIC24F 开发一个项目。在过去几周的某个时间点,编译器开始对编译中的每一行给出以下警告。编译器行中的什么可能导致这种情况?列号似乎没有指向任何有意义的东西,MPLAB 没有生成的唯一东西是-DGIT_VERSION="v1.0-1-g14e8d84-d 标志,我在许多其他项目中使用了类似的版本。

"C:\Program Files (x86)\Microchip\xc16\v1.26\bin\xc16-gcc.exe"   mcc_generated_files/oc4.c  -o build/PICkit3-XP/production/mcc_generated_files/oc4.o  -c -mcpu=24FJ64GA002  -MMD -MF "build/PICkit3-XP/production/mcc_generated_files/oc4.o.d"        -g -omf=elf -DGIT_VERSION="v1.0-1-g14e8d84-d" -DXPRJ_PICkit3-XP=PICkit3-XP  -legacy-libc    -I"mcc_generated_files" -I"../inc" -I"../dn-rdm-slave.X" -O0 -msmart-io=1 -Wall -msfr-warn=off  
<command-line>:0:13: warning: missing whitespace after the macro name

【问题讨论】:

  • XPRJ_PICkit3-XP 不是有效的宏名称。
  • @JoachimPileborg 如果您对他投了反对票,请删除它。我认为在这种情况下这是一个有效的问题,因为 #define 来自 IDE。

标签: c microchip mplab xc16


【解决方案1】:

在最新版本的 MPLAB-X 中,microchip 引入了一个可以在构建中定义配置名称的功能。这将允许用户使用#ifs 等的配置名称(例如,您希望显示器根据配置显示不同的文本)。虽然大部分非法字符都被清除了,但看起来“-”被遗漏了。

如果您将配置名称更改为使用下划线,则应消除这些警告。

【讨论】:

  • 感谢您的澄清,在 JoachimPileborgs 发表评论后,我设法解决了这个问题,但这使它更加明显。
猜你喜欢
  • 2013-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-20
  • 2019-01-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多