41 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Objective-C
		
	
	
	
| // RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s
 | |
| 
 | |
| typedef int INTF3; // expected-note {{previous definition is here}}
 | |
| 
 | |
| @interface SUPER @end // expected-note {{previous definition is here}}
 | |
| 
 | |
| @interface OBJECT @end
 | |
| 
 | |
| @interface INTF  : OBJECT
 | |
| @end
 | |
| 
 | |
| @implementation INTF @end // expected-note {{previous definition is here}}
 | |
| 
 | |
| @implementation INTF //  expected-error {{reimplementation of class 'INTF'}}
 | |
| @end
 | |
| 
 | |
| 
 | |
| @interface INTF1 : OBJECT
 | |
| @end
 | |
| 
 | |
| @implementation INTF1 : SUPER // expected-error {{conflicting super class name 'SUPER'}}
 | |
| @end
 | |
| 
 | |
| @interface INTF2 
 | |
| @end
 | |
| 
 | |
| @implementation INTF2 : SUPR //  expected-error {{cannot find interface declaration for 'SUPR', superclass of 'INTF2'}}
 | |
| @end
 | |
| 
 | |
| @implementation INTF3 @end // expected-error {{redefinition of 'INTF3' as different kind of symbol}}
 | |
| 
 | |
| @implementation INTF4 @end // expected-warning {{cannot find interface declaration for 'INTF4'}}
 | |
| 
 | |
| @class INTF5; // expected-note{{forward declaration of class here}}
 | |
| 
 | |
| @implementation INTF5 {  // expected-warning {{cannot find interface declaration for 'INTF5'}}
 | |
|   int x;
 | |
| }
 | |
| @end
 | |
| 
 |