如何在Eclipse 4.7.3a

时间:2018-05-20 14:42:38

标签: c++ eclipse eclipse-cdt c++17

Eclipse CDT尚未理解

This std::visit example,但使用C ++ 17编译器可以很好地编译它。

我的意思是这些界限:

template<class... Ts> struct overloaded : Ts... { using Ts::operator()...; };
template<class... Ts> overloaded(Ts...) -> overloaded<Ts...>;

Eclipse标记这两行并显示“语法错误”。我正在挖掘Eclipse设置,但我找不到任何@suppress指令,它可以简单地抑制“语法错误”。

我的问题:
这是一种如何抑制“语法错误”的方法吗?

设置Preferences | C/C++ | Code Analysis包含以下部分:

  • 编码风格
  • 潜在的编程问题
  • 安全漏洞
  • 语法和语义错误

最后一节包含可以禁用或禁止的错误的更详细说明 此部分是否包含“语法错误”,因为它在编辑器中显示,然后我的问题不存在。特别是,知道CDT不能总是最新的这将有所帮助。

2 个答案:

答案 0 :(得分:1)

没有机制可以抑制单个语法错误(@suppress是一种特定于CodAn(代码分析)错误的机制。)

您可以转到Preferences | General | Editors | Text Editors | Annotations,选择C/C++ Indexer Markers(这是为语法错误创建的标记),并取消选中那里的部分或全部复选框,从而抑制所有语法错误。

答案 1 :(得分:1)

来自HighCommander4的答案会禁用 - 正如我所评论的那样 - 所有“语法错误”标记意图。

所以,目前还没有解决方案来实现这一目标。

我打开ticket作为HighCommander4建议,可能会在其中一个Eclipse更新中实现。