Home | History | Annotate | Download | only in Misc
      1 @interface Foo
      2 - (void) test;
      3 - (void) test2;
      4 @end
      5 
      6 @implementation Foo
      7 - (void) test {
      8   [_self test2];
      9 }
     10 - (void) test2 {}
     11 @end
     12 
     13 // RUN: rm -f %t
     14 // RUN: not %clang -Wall -fsyntax-only %s --serialize-diagnostics %t.diag > /dev/null 2>&1
     15 // RUN: c-index-test -read-diagnostics %t.diag > %t 2>&1
     16 // RUN: FileCheck --input-file=%t %s
     17 
     18 // This test checks that serialized diagnostics handle notes with no source location.
     19 
     20 // CHECK: {{.*[/\\]}}serialized-diags.m:8:4: error: use of undeclared identifier '_self'; did you mean 'self'? [] [Semantic Issue]
     21 // CHECK: Range: {{.*[/\\]}}serialized-diags.m:8:4 {{.*[/\\]}}serialized-diags.m:8:9
     22 // CHECK: Number FIXITs = 1
     23 // CHECK: FIXIT: ({{.*[/\\]}}serialized-diags.m:8:4 - {{.*[/\\]}}serialized-diags.m:8:9): "self"
     24 // CHECK: +-(null):0:0: note: 'self' is an implicit parameter [] [Semantic Issue]
     25 // CHECK: Number FIXITs = 0
     26 // CHECK: {{.*[/\\]}}serialized-diags.m:1:12: warning: class 'Foo' defined without specifying a base class [-Wobjc-root-class] [Semantic Issue]
     27 // CHECK: Number FIXITs = 0
     28 // CHECK: +-{{.*[/\\]}}serialized-diags.m:1:15: note: add a super class to fix this problem [] [Semantic Issue]
     29 // CHECK: Number FIXITs = 0
     30 // CHECK: Number of diagnostics: 2
     31