#pragma clang diagnostic ignored的使用

在iOS开发过程中, 我们可能会碰到一些系统方法弃用, weak、循环引用、不能执行之类的警告。 有代码洁癖的孩子们很想消除他们, 今天就让我们来一次Fuck 警告!!

首先学会基本的语句

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wgnu-conditional-omitted-operand"

这里写出现警告的代码

#pragma clang diagnostic pop


if (![s respondsToSelector:@selector(boundingRectWithSize:options:attributes:context:)]) {

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wdeprecated-declarations"

labelsize = [s sizeWithFont:font constrainedToSize:size lineBreakMode:NSLineBreakByWordWrapping];

#pragma clang diagnostic pop

} else {

NSMutableParagraphStyle *style = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];

[style setLineBreakMode:NSLineBreakByWordWrapping];

labelsize = [s boundingRectWithSize:size

options:(NSStringDrawingUsesLineFragmentOrigin|NSStringDrawingUsesFontLeading)

attributes:@{ NSFontAttributeName:font, NSParagraphStyleAttributeName : style}

context:nil].size;

}

参考

iOS编程 手动忽略clang编译器警告

你可能感兴趣的:(#pragma clang diagnostic ignored的使用)