36 lines
		
	
	
		
			742 B
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			742 B
		
	
	
	
		
			Objective-C
		
	
	
	
| // RUN: %clang_cc1 -fsyntax-only -verify %s
 | |
| // expected-no-diagnostics
 | |
| typedef signed char BOOL;
 | |
| typedef struct _NSZone NSZone;
 | |
| 
 | |
| @protocol NSObject
 | |
| - (BOOL)isEqual:(id)object;
 | |
| @end
 | |
| 
 | |
| @protocol NSCopying
 | |
| - (id)copyWithZone:(NSZone *)zone;
 | |
| @end
 | |
| 
 | |
| @interface NSObject <NSObject> {}
 | |
| @end
 | |
| 
 | |
| @class NSString, NSData, NSMutableData, NSMutableDictionary, NSMutableArray;
 | |
| 
 | |
| @interface SCMObject : NSObject <NSCopying> {}
 | |
|   @property(assign) SCMObject *__attribute__((objc_gc(weak))) parent;
 | |
| @end
 | |
| 
 | |
| @interface SCMNode : SCMObject
 | |
| {
 | |
|   NSString *_name;
 | |
| }
 | |
| @property(copy) NSString *name;
 | |
| @end
 | |
| 
 | |
| @implementation SCMNode
 | |
|   @synthesize name = _name;
 | |
|   - (void) setParent:(SCMObject *__attribute__((objc_gc(weak)))) inParent {
 | |
|     super.parent = inParent;
 | |
|   }
 | |
| @end
 |