【发布时间】:2018-05-23 23:16:25
【问题描述】:
我有一个 C 头文件(扩展名为 .h)和通常的 C++“包装”代码:
#ifdef __cplusplus
extern "C" {
#endif
/* declarations here */
#ifdef __cplusplus
}
#endif
现在 Eclipse CDT (Oxygen) 将 extern "C" 中包含的所有内容标记为语法错误(副作用是内部的任何声明都没有被索引)。该项目是从 Eclipse Luna 升级而来的(这没有任何问题),并且使用 CMake 构建没有任何问题。
其他头文件具有相同的extern "C" 结构并被Eclipse 接受。有问题的文件似乎也没有任何不匹配的大括号。
这里出了什么问题,我该如何解决?
【问题讨论】:
-
仅基于该代码 sn-p 很难说出了什么问题,它在隔离时被解析得很好。我建议 filing a bug 附上一个示例项目,或者至少是受影响文件的完整版本。
-
我已经提交了一个引用完整项目的错误:bugs.eclipse.org/bugs/show_bug.cgi?id=534970
标签: eclipse eclipse-cdt header-files