c-如何从GCC-6中捕获类似“-Wduplicated cond”的重复

  • 本文关键字:cond -Wduplicated GCC-6 c gcc gcc6
  • 更新时间 :
  • 英文 :


正如标题所说,对于那些已经知道以GCC-6开头的人来说,可以使用以下标志-Wduplicated-condif语句中捕获重复项:

#include <stdio.h>
int main(void){
    int a = 5;
    if( a == 5){
        printf("First  condition is True, A = %dn", a);
    }else if( a == 5 ){
        printf("Second condition is True, A = %dn", a);
    }
}

输出将是:

program.c:8:17: warning: duplicated ‘if’ condition [-Wduplicated-cond]
     }else if( a == 5 ){
               ~~^~~~
program.c:6:11: note: previously used here
     if( a == 5){
         ~~^~~~

现在我知道以下内容:

else if( (a > 4) && (a < 6) )

与不同

else if( a == 5 )

但碰巧的是,如果CCD_。

我的问题是,有机会抓住(避免)这种重复吗?

-Wduplicated-cond确实捕捉到了这种情况。你必须明确启用它。

main.cpp:在函数"int main()"中:

main.cpp:8:11:警告:重复的"if"条件[-Wduplicated cond]

 }else if( a == 5 ){
       ^~

main.cpp:6:5:注意:以前在这里使用

 if( a == 5){

它最初由-Wall启用,但由于PR67819:而不再启用

考虑到新的警告目前破坏了bootstrap[*],我认为没有如何解决PR67819导出自引导的简单方法失败,我将-Wduplicated第二个移出Wall并跳过其中一个暂时的测试。我也在恢复破解genemit c.

相关内容

  • 没有找到相关文章

最新更新