forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			65 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| // RUN: %clang_cc1 %s -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s
 | |
| 
 | |
| // CHECK: v17@0:8{vector<float, float, float>=}16
 | |
| // CHECK: {vector<float, float, float>=}
 | |
| // CHECK: v24@0:816
 | |
| 
 | |
| template <typename T1, typename T2, typename T3> struct vector {
 | |
|   vector();
 | |
|   vector(T1,T2,T3);
 | |
| };
 | |
| 
 | |
| typedef vector< float, float, float > vector3f;
 | |
| 
 | |
| @interface SceneNode
 | |
| {
 | |
|  vector3f position;
 | |
| }
 | |
| 
 | |
| @property (assign, nonatomic) vector3f position;
 | |
| 
 | |
| @end
 | |
| 
 | |
| @interface MyOpenGLView
 | |
| {
 | |
| @public
 | |
|   vector3f position;
 | |
| }
 | |
| @property vector3f position;
 | |
| @end
 | |
| 
 | |
| @implementation MyOpenGLView
 | |
| 
 | |
| @synthesize position;
 | |
| 
 | |
| -(void)awakeFromNib {
 | |
|  SceneNode *sn;
 | |
|  vector3f VF3(1.0, 1.0, 1.0);
 | |
|  [sn setPosition:VF3];
 | |
| }
 | |
| @end
 | |
| 
 | |
| 
 | |
| class Int3 { int x, y, z; };
 | |
| 
 | |
| // Enforce @encoding for member pointers.
 | |
| @interface MemPtr {}
 | |
| - (void) foo: (int (Int3::*)) member;
 | |
| @end
 | |
| @implementation MemPtr
 | |
| - (void) foo: (int (Int3::*)) member {
 | |
| }
 | |
| @end
 | |
| 
 | |
| // rdar: // 8519948
 | |
| typedef float HGVec4f __attribute__ ((vector_size(16)));
 | |
| 
 | |
| @interface RedBalloonHGXFormWrapper {
 | |
|   HGVec4f m_Transform[4];
 | |
| }
 | |
| @end
 | |
| 
 | |
| @implementation RedBalloonHGXFormWrapper
 | |
| @end
 | |
| 
 |