Eclipse cdt没有提供足够的错误信息

时间:2010-03-25 17:17:55

标签: c++ eclipse-cdt

  YYSTYPE yyvsa[YYINITDEPTH];
  YYSTYPE *yyvs = yyvsa;
  register YYSTYPE *yyvsp;

对于上面的代码,它只是报告:

Description Resource    Path    Location    Type
syntax error before "yyvsa" yysphinxexpr.c  /sp/src line 852    C/C++ Problem

这远非有用,是出于配置原因吗?

1 个答案:

答案 0 :(得分:0)

那个片段看起来很合理。每当我遇到一个没有意义的错误消息时,我会尝试使用如下过程来缩小它:

  1. 验证我是否可以使用尽可能少的依赖项重现错误(例如删除不必要的类,包括等)。
  2. 手动编译文件,查看错误是否相同或在显示之前是否正在解释
  3. 预处理文件,然后手动检查。有时宏会踩踏自己或做你不期望的事情。如果您可以预处理文件(例如gcc -E [opts] filename),您将看到编译器最终处理的内容,这可能有所帮助。
  4. 尝试使用其他编译器。有时,不同的编译器会产生一个对您更有意义的错误消息......或者您会发现有人做了某些只允许某些编译器允许的事情。