47 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
| // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -fobjc-gc -emit-llvm -o %t %s
 | |
| // RUN: not grep objc_assign_ivar %t
 | |
| // RUN: grep objc_assign_strongCast %t | count 8
 | |
| // RUN: %clang_cc1 -x objective-c++ -triple x86_64-apple-darwin10 -fobjc-runtime=macosx-fragile-10.5 -fobjc-gc -emit-llvm -o %t %s
 | |
| // RUN: not grep objc_assign_ivar %t
 | |
| // RUN: grep objc_assign_strongCast %t | count 8
 | |
| 
 | |
| @interface TestUnarchiver 
 | |
| {
 | |
| 	void  *allUnarchivedObjects;
 | |
| }
 | |
| @end
 | |
| 
 | |
| @implementation TestUnarchiver
 | |
| 
 | |
| struct unarchive_list {
 | |
|     int ifield;
 | |
|     id *list;
 | |
| };
 | |
| 
 | |
| - (id)init {
 | |
|     (*((struct unarchive_list *)allUnarchivedObjects)).list = 0;
 | |
|     ((struct unarchive_list *)allUnarchivedObjects)->list = 0;
 | |
|     (**((struct unarchive_list **)allUnarchivedObjects)).list = 0;
 | |
|     (*((struct unarchive_list **)allUnarchivedObjects))->list = 0;
 | |
|     return 0;
 | |
| }
 | |
| 
 | |
| @end
 | |
| 
 | |
| // rdar://10191569
 | |
| @interface I
 | |
| {
 | |
|   struct S {
 | |
|     id _timer;
 | |
|   } *p_animationState;
 | |
| }
 | |
| @end
 | |
| 
 | |
| @implementation I
 | |
| - (void) Meth {
 | |
|   p_animationState->_timer = 0;
 | |
|   (*p_animationState)._timer = 0;
 | |
|   (&(*p_animationState))->_timer = 0;
 | |
| }
 | |
| @end
 |