从现在开始,是否已禁用GCC误导性缩进警告?

时间:2019-06-18 01:31:56

标签: c++ gcc gcc-warning

在编译相当大的C++ project时,我收到此消息:

  

注意:-由于代码/标头的大小导致列跟踪被禁用,因此从现在开始,将禁用-Wmisleading-indentation

所以,有几个问题:

  • 禁用此警告有多严重?
  • 哪种原因导致此功能被禁用?只是代码太大了?
  • 是否有一种方法可以优化/修复代码以防止被禁用?
  • 尽管代码/标头很大,有没有办法重新启用它?
  • 是否可以使有关警告已禁用的注释静音?

1 个答案:

答案 0 :(得分:3)

  

禁用此警告有多严重?

除了从警告出现的地方误导缩进的代码不会收到警告之外,它的作用几乎为零。

  

哪种原因导致此功能被禁用?只是代码太大了?

This GCC bug

  

有没有一种方法可以优化/修复代码以防止被禁用?

当然可以,但是这需要浪费的工作。等待gcc中的错误修正。

  

有没有   不管代码/标题的大小如何重新启用它?

如果可能的话(从新的翻译单元开始时),很可能会重新启用自身。

  

有没有   如何使有关警告已禁用的注释静音?

我暂时添加-Wno-misleading-indentation。如果已安装,也可以使用其他编译器。

例如,clang 8.0.0不会发出该警告:

scons -j12 platform=x11 use_llvm=yes target=release_debug