File: fixit-objc-bridge-related.m

package info (click to toggle)
llvm-toolchain-19 1%3A19.1.7-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,998,520 kB
  • sloc: cpp: 6,951,680; ansic: 1,486,157; asm: 913,598; python: 232,024; f90: 80,126; objc: 75,281; lisp: 37,276; pascal: 16,990; sh: 10,009; ml: 5,058; perl: 4,724; awk: 3,523; makefile: 3,167; javascript: 2,504; xml: 892; fortran: 664; cs: 573
file content (42 lines) | stat: -rw-r--r-- 1,232 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
// RUN: not %clang_cc1 -triple x86_64-apple-darwin10  -fdiagnostics-parseable-fixits -x objective-c -fobjc-arc %s 2>&1 | FileCheck %s
// RUN: not %clang_cc1 -triple x86_64-apple-darwin10  -fdiagnostics-parseable-fixits -x objective-c++ -fobjc-arc %s 2>&1 | FileCheck %s

typedef struct __attribute__((objc_bridge_related(UIColor,colorWithCGColor:,CGColor))) CGColor *CGColorRef;

@interface UIColor 
+ (UIColor *)colorWithCGColor:(CGColorRef)cgColor;
- (CGColorRef)CGColor;
@end

@interface UIButton
@property(nonatomic,retain) UIColor *tintColor;
@end

void test(UIButton *myButton) {
  CGColorRef cgColor = (CGColorRef)myButton.tintColor;
  cgColor = myButton.tintColor;

  cgColor = (CGColorRef)[myButton.tintColor CGColor];

  cgColor = (CGColorRef)[myButton tintColor];
}

// CHECK: {16:36-16:36}:"["
// CHECK: {16:54-16:54}:" CGColor]"

// CHECK: {17:13-17:13}:"["
// CHECK: {17:31-17:31}:" CGColor]"

// CHECK: {21:25-21:25}:"["
// CHECK: {21:45-21:45}:" CGColor]"

@interface ImplicitPropertyTest
- (UIColor *)tintColor;
@end

void test1(ImplicitPropertyTest *myImplicitPropertyTest) {
  CGColorRef cgColor = (CGColorRef)[myImplicitPropertyTest tintColor];
}

// CHECK: {38:36-38:36}:"["
// CHECK: {38:70-38:70}:" CGColor]"