1*67e74705SXin Li// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -o - %s | FileCheck %s 2*67e74705SXin Li// rdar://8427922 3*67e74705SXin Li 4*67e74705SXin Listruct Vector3D 5*67e74705SXin Li{ 6*67e74705SXin Li float x, y, z; 7*67e74705SXin Li Vector3D(); 8*67e74705SXin Li Vector3D(const Vector3D &inVector); 9*67e74705SXin Li Vector3D(float initX, float initY, float initZ); 10*67e74705SXin Li Vector3D &operator=(const Vector3D & rhs); 11*67e74705SXin Li}; 12*67e74705SXin Li 13*67e74705SXin Li@interface Object3D 14*67e74705SXin Li{ 15*67e74705SXin Li Vector3D position; 16*67e74705SXin Li Vector3D length; 17*67e74705SXin Li} 18*67e74705SXin Li@property (assign) Vector3D position; 19*67e74705SXin Li- (Vector3D) length; 20*67e74705SXin Li- (void) setLength: (Vector3D)arg; 21*67e74705SXin Li@end 22*67e74705SXin Li 23*67e74705SXin Liint main () 24*67e74705SXin Li{ 25*67e74705SXin Li Object3D *myObject; 26*67e74705SXin Li Vector3D V3D(1.0f, 1.0f, 1.0f); 27*67e74705SXin Li// CHECK: call void @_ZN8Vector3DC1ERKS_ 28*67e74705SXin Li myObject.position = V3D; 29*67e74705SXin Li 30*67e74705SXin Li// CHECK: call void @_ZN8Vector3DC1ERKS_ 31*67e74705SXin Li myObject.length = V3D; 32*67e74705SXin Li 33*67e74705SXin Li return 0; 34*67e74705SXin Li} 35*67e74705SXin Li 36*67e74705SXin Li// rdar: // 8437253 37*67e74705SXin Liextern "C" void exit(...); 38*67e74705SXin Li 39*67e74705SXin Listruct CGPoint { 40*67e74705SXin Li float x; 41*67e74705SXin Li float y; 42*67e74705SXin Li}; 43*67e74705SXin Litypedef struct CGPoint CGPoint; 44*67e74705SXin Li 45*67e74705SXin Liextern "C" const CGPoint CGPointZero; 46*67e74705SXin Li 47*67e74705SXin Libool operator==(const CGPoint& a, const CGPoint& b); 48*67e74705SXin Li 49*67e74705SXin Li@interface TIconViewSettings 50*67e74705SXin Li@property (assign, nonatomic) CGPoint gridOffset; 51*67e74705SXin Li@end 52*67e74705SXin Li 53*67e74705SXin Li@implementation TIconViewSettings 54*67e74705SXin Li- (CGPoint) gridOffset 55*67e74705SXin Li{ 56*67e74705SXin Li return CGPointZero; 57*67e74705SXin Li} 58*67e74705SXin Li 59*67e74705SXin Li- (void) foo 60*67e74705SXin Li{ 61*67e74705SXin Li if ((self.gridOffset) == CGPointZero) 62*67e74705SXin Li exit(1); 63*67e74705SXin Li 64*67e74705SXin Li if (self.gridOffset == CGPointZero) 65*67e74705SXin Li exit(1); 66*67e74705SXin Li} 67*67e74705SXin Li@end 68*67e74705SXin Li 69