为什么不能柯顿发现的size_t(Why can't Codan find size_t)

2019-06-23 12:44发布

我刚开始使用Eclipse靛蓝(伽利略推出)和我得到一点红虫子在阴沟里每次使用的size_t的。

该代码在编译时没有问题,但我怀疑我的include目录明确添加的路径。 我已经有一般的犯罪嫌疑人在那里。 我交叉编译了使用GNU工具链的ColdFire处理器所以除了标准的从芯片的MFG包括我有下m68k的精灵包括

\include  
\include\c++\4.2.1
\include\c++\4.2.1\include
\include\c++\4.2.1\m68k-elf

更新

我注意到,STDDEF.H存在此工具链的唯一地方是在lib目录

gcc-m68k\lib\gcc\m68k-elf\4.2.1\include

我补充说路径,父路径\include-fixed从父,但问题依然存在。

注意在测试

当测试什么可行,什么不,我注意到几件事情

  1. 代码分析不会被重新触发修改代码分析偏好设置的时候,我还需要做出改变的编辑器(简单地增加一个空间的作品)
  2. 关闭的代码分析设置Symbol is not resolved不会让错误消失。
  3. 关闭所有的Syntax and Semantic Errors ,引发了分析,回去和重新打开所有这些,然后关闭Symbol is not resolved保持错误再次出现。

Answer 1:

检查你的索引设置在首选项 - > C / C ++ - >索引。

有一个领域有所谓的“提交到指数的前期”。 它的内容应该是:

cstdarg, stdarg.h, stddef.h, sys/resource.h, ctime, sys/types.h, signal.h, cstdio

如果有别的东西在里面,尝试与上述替换它,然后重建索引,并看看是否能解决这个问题。

(特别是,如果你在这个领域已经是stdarg.h, stddef.h, sys/types.h ,我有一个很好的猜测,哪里出了问题。早在的Eclipse Ganymede,这个字段的值stdarg.h, stddef.h, sys/types.h 。在新版本(Galileo和靛蓝),又改为以上。然而,由于该领域是“首选项”的一部分,如果你的出口木卫三的喜好和进口他们进入伽利略/靛蓝,这个领域与老木卫三值覆盖。我被这在不久前烧毁。)



Answer 2:

为了确保获得size_t你应该#include<cstddef> ; 那么,这将是std::size_t ,除非你也投入了using namespace stdusing std::size_t



Answer 3:

如果你的工具链只能与它的默认编译代码包含路径和符号,只设置Eclipse中使用它们应该是足够的。 转到C/C++ Build -> Discovery Options在项目属性,并为每种语言,改变Compiler invocation command从本地编译器(如g++ )你的交叉编译器(如C:\nburn\gcc-m68k\bin\g++也许?)。 然后在接下来的构建,自动发现将运行和更新所谓的“内置”的路径和符号,在该项目的显示C/C++ General -> Paths and Symbols来无论你编译报道,你可以再次重新建立索引以确保对旧的“内建”的任何警告都没有了。



Answer 4:

达不到这个问题,露出两颗堆栈溢出问题击中了同样的问题搜索后,我想我会提出我如何修复它后,惹恼了我足够的实际调查。

我运行Fedora和烦人,它在/ usr / include中/ Linux的....这实际上是一个空文件STDDEF.H。 所以,即使我在include路径有编译器的STDDEF.H,索引实际上解析这个其他的空文件。 那么什么需要的所作所为是:

你的前缀路径和符号列表与特定的编译器包含路径(在我的情况下,它是/usr/lib/gcc/x86_64-redhat-linux/4.7.2/include/),以避免被解析的其他空STDDEF.H。



Answer 5:

其实我有同样的问题。 这个问题似乎是像fquinner的职位描述的一样,坐落在STDDEF.H /usr/include/linux/stddef.h是空的为好。 奇怪的是,正确的stddef.h被日食发现,甚至可能没有任何问题地openened。

如果你(反正与另一个构建工具构建时为例)只需要修复的日食索引和我一样,这个索引问题可以围绕通过定义工作__SIZE_TYPE__到预期的类型,如long unsigned int下的C/C++ General -> Paths and Symbols



文章来源: Why can't Codan find size_t