1 // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -fobjc-nonfragile-abi -fexceptions -o - %s | FileCheck %s
8 @interface TNodeIconAndNameCell
9 - (const TFENode&) node;
12 @implementation TNodeIconAndNameCell
13 - (const TFENode&) node {
14 // CHECK: call %struct.TFENode* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend
15 // CHECK-NEXT: call void @_ZNK7TFENode6GetURLEv(%struct.TFENode* %{{.*}})
17 } // expected-warning {{control reaches end of non-void function}}
25 void f0(const X &parent);
30 // CHECK: [[PRP:%.*]] = call %struct.X* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend
31 // CHECK-NEXT:call void @_Z2f0RK1X(%struct.X* [[PRP]])
34 // CHECK: [[MSG:%.*]] = call %struct.X* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend
35 // CHECK-NEXT:call void @_Z2f0RK1X(%struct.X* [[MSG]])
40 @property (readonly) int myProperty;
46 (void) obj.myProperty;
48 static_cast<void>(obj.myProperty);
49 static_cast<void>(obj.myGetter);
53 // CHECK: define void @_Z5test2v()
54 // CHECK: call i32 bitcast
55 // CHECK: call double bitcast
56 // CHECK: call i32 bitcast
57 // CHECK: call double bitcast
58 // CHECK: call i32 bitcast
59 // CHECK: call double bitcast
62 int test3(Test2 *obj) { return obj.myProperty; }