clang diagnostic的使用

2017-10-14  本文已影响58人  一代骄马

clang diagnostic的使用 - CSDN博客

使用格式大致如下:

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-相关命令"

    //需要操作的代码

#pragma clang diagnostic pop

栗子1:忽略弃用的警告️

//方法弃用告警   

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wdeprecated-declarations"

    UIAlertView *alertViewTmp = [[UIAlertView alloc]initWithTitle:@"" message:@"" delegate:nil cancelButtonTitle:@"" otherButtonTitles:@"", nil];

    [alertViewTmp show];

#pragma clang diagnostic pop

栗子2:忽略不兼容指针类型️

//  不兼容指针类型

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wincompatible-pointer-types"

    //

#pragma clang diagnostic pop

栗子3:循环引用️

break the retain cycle.

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Warc-retain-cycles"

//    self.completionBlock = ^ {

//        ...

//    };

#pragma clang diagnostic pop

栗子4:未使用变量 ️

// 未使用变量 

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wunused-variable"

    int a;

#pragma clang diagnostic pop

栗子5:未使用default ️

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wcovered-switch-default"

//    switch (style) {

//        case UITableViewCellStyleDefault:

//        case UITableViewCellStyleValue1:

//        case UITableViewCellStyleValue2:

//        case UITableViewCellStyleSubtitle:

//            // ...

//        default:

//            return;

//    }

#pragma clang diagnostic pop

上一篇下一篇

猜你喜欢

热点阅读