【问题标题】:gcc compiler not stop on first errorgcc 编译器不会在第一个错误时停止
【发布时间】:2012-11-09 22:37:54
【问题描述】:

如何让 gcc 在第一个错误后不停止编译。是否有编译器标志可以做到这一点?

基本上我想删除一个课程,但我不确定这会产生多大的影响,所以我想确定如果我删除课程会有多少课程出现问题生成文件。

有没有更好的方法来确定这种影响?

【问题讨论】:

    标签: gcc compiler-construction compiler-errors compiler-flags


    【解决方案1】:

    有一个GCC compiler option-Wfatal-errors在第一个错误后停止:

    -Wfatal-错误
    此选项导致编译器在发生第一个错误时中止编译,而不是尝试继续进行并进一步打印 错误信息

    如果您想将警告视为错误,您也可以使用-Werror,以便在删除类时捕获任何可能生成的警告。

    【讨论】:

    • 我很困惑。添加 -Wfatal-errors 表示它与 OP 要求的完全相反:-Wfatal-errors 将导致它在第一个错误时停止,但 OP 会询问如何让它在第一个错误时停止。
    • @GabrielStaples 确实!我的猜测是 OP 有 -Wfatal-errors 所以删除它解决了它(它也可以通过 -Wno-fatal-errors 显式设置,以防删除 -Wfatal-errors 是不可能/可取的,但需要临时解决方案)。
    【解决方案2】:

    有没有更好的方法来确定这种影响?

    使用许多 IDE 中内置的重构支持。例如,使用 NetBeans,您可以选择重命名一个类并预览所有受影响的地方。

    在没有 IDE 的情况下,您可以重命名类/方法/字段,而不是删除它,并且通过多次编译运行,逐渐更改旧名称的所有用法,其中编译器会出错。然后 grep 获取新名称。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-18
      • 1970-01-01
      • 2017-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多