[clang-format] Fix a bug in aligning comments above PPDirective (#72791)
[llvm-project.git] / clang / test / Refactor / Extract / ExtractionSemicolonPolicy.m
blob26f601a2d1502d8a29905b1729e9ed673068915f
1 // RUN: clang-refactor extract -selection=test:%s %s -- 2>&1 | grep -v CHECK | FileCheck %s
3 @interface NSArray
4 + (id)arrayWithObjects:(const id [])objects count:(unsigned long)cnt;
5 @end
7 void extractStatementNoSemiObjCFor(NSArray *array) {
8   /*range astmt=->+2:4*/for (id i in array) {
9     int x = 0;
10   }
12 // CHECK: 1 'astmt' results:
13 // CHECK:      static void extracted() {
14 // CHECK-NEXT: for (id i in array) {
15 // CHECK-NEXT: int x = 0;
16 // CHECK-NEXT: }{{$}}
17 // CHECK-NEXT: }{{[[:space:]].*}}
19 void extractStatementNoSemiSync(void) {
20   id lock;
21   /*range bstmt=->+2:4*/@synchronized(lock) {
22     int x = 0;
23   }
25 // CHECK: 1 'bstmt' results:
26 // CHECK:      static void extracted() {
27 // CHECK-NEXT: @synchronized(lock) {
28 // CHECK-NEXT: int x = 0;
29 // CHECK-NEXT: }{{$}}
30 // CHECK-NEXT: }{{[[:space:]].*}}
32 void extractStatementNoSemiAutorel(void) {
33   /*range cstmt=->+2:4*/@autoreleasepool {
34     int x = 0;
35   }
37 // CHECK: 1 'cstmt' results:
38 // CHECK:      static void extracted() {
39 // CHECK-NEXT: @autoreleasepool {
40 // CHECK-NEXT: int x = 0;
41 // CHECK-NEXT: }{{$}}
42 // CHECK-NEXT: }{{[[:space:]].*}}
44 void extractStatementNoSemiTryFinalllllly(void) {
45   /*range dstmt=->+3:4*/@try {
46     int x = 0;
47   } @finally {
48   }
50 // CHECK: 1 'dstmt' results:
51 // CHECK:      static void extracted() {
52 // CHECK-NEXT: @try {
53 // CHECK-NEXT: int x = 0;
54 // CHECK-NEXT: } @finally {
55 // CHECK-NEXT: }{{$}}
56 // CHECK-NEXT: }{{[[:space:]].*}}