You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

58 lines
1.2 KiB

3 years ago
/*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
#import <Foundation/Foundation.h>
#import <CoreGraphics/CGGeometry.h>
#import <CoreGraphics/CGColor.h>
@interface A : NSObject
- (CGSize)sizeThatFits:(int)x;
- (int)init_var_ok;
@end
@implementation A
- (CGSize)sizeThatFits:(int)x {
CGSize s = CGSizeMake(x, x);
return s;
}
- (int)init_var_ok {
const CGSize labelSize = [self sizeThatFits:10];
return labelSize.height; // Here we should not report uninit
}
typedef NS_ENUM(NSUInteger, SomeEnum) { ValueA, ValueB };
CGColorRef FP_switch_ok(SomeEnum e, CGColorRef defaultcolor) {
CGColorRef color;
switch (e) {
case ValueA:
color = defaultcolor;
break;
case ValueB:
color = defaultcolor;
break;
}
return color; // false positive because of exhaustive switch
}
void dict_literal_with_conditional_ok() {
NSDictionary* exceptionParams =
@{@"foo" : @"bar", @"boo" : 0 ?: @"", @"beh" : 1 ? @"true" : @"false"};
// use the variable
if (exceptionParams[@"foo"]) {
}
}
@end