Home | History | Annotate | Download | only in SemaObjCXX
      1 // RUN: %clang_cc1 -triple i386-apple-darwin9 -fobjc-gc -fsyntax-only -verify %s
      2 @interface INTF @end
      3 
      4 extern INTF* p2;
      5 extern __strong INTF* p2;
      6 
      7 extern __strong id p1;
      8 extern id p1;
      9 
     10 extern id CFRunLoopGetMain();
     11 extern __strong id CFRunLoopGetMain();
     12 
     13 extern __strong id CFRunLoopGetMain2();
     14 extern id CFRunLoopGetMain2();
     15 
     16 extern INTF* CFRunLoopGetMain3();
     17 extern __strong INTF* CFRunLoopGetMain3();
     18 
     19 extern __strong INTF* CFRunLoopGetMain4();
     20 extern INTF* CFRunLoopGetMain4();
     21 
     22 typedef id ID;
     23 extern ID CFRunLoopGetMain5();
     24 extern __strong id CFRunLoopGetMain5();
     25 
     26 extern __strong id CFRunLoopGetMain6();
     27 extern ID CFRunLoopGetMain6();
     28 
     29 extern ID CFRunLoopGetMain7();
     30 extern __strong ID CFRunLoopGetMain7();
     31 
     32 extern __strong ID CFRunLoopGetMain8();
     33 extern ID CFRunLoopGetMain8();
     34 
     35 extern __weak id WLoopGetMain(); // expected-note {{previous declaration is here}}
     36 extern id WLoopGetMain();	// expected-error {{functions that differ only in their return type cannot be overloaded}}
     37 
     38 extern id p3;	// expected-note {{previous definition is here}}
     39 extern __weak id p3;	// expected-error {{redefinition of 'p3' with a different type}}
     40 
     41 extern void *p4; // expected-note {{previous definition is here}}
     42 extern void * __strong p4; // expected-error {{redefinition of 'p4' with a different type}}
     43 
     44 extern id p5;
     45 extern __strong id p5;
     46 
     47 extern char* __strong p6; // expected-note {{previous definition is here}}
     48 extern char* p6; // expected-error {{redefinition of 'p6' with a different type}}
     49 
     50 extern __strong char* p7; // expected-note {{previous definition is here}}
     51 extern char* p7; // expected-error {{redefinition of 'p7' with a different type}}
     52