1 struct Point { 2 float x; 3 float y; 4 float z; 5 }; 6 7 void test(struct Point *p) { 8 p-> 9 // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:8:6 %s -o - | FileCheck -check-prefix=CHECK-CC1 %s 10 // CHECK-CC1: x 11 // CHECK-CC1: y 12 // CHECK-CC1: z 13 } 14 15 struct Point2 { 16 float x; 17 }; 18 19 void test2(struct Point2 p) { 20 p-> 21 } 22 23 void test3(struct Point2 *p) { 24 p. 25 } 26 27 // RUN: %clang_cc1 -fsyntax-only -code-completion-with-fixits -code-completion-at=%s:20:6 %s -o - | FileCheck -check-prefix=CHECK-CC2 %s 28 // CHECK-CC2: x (requires fix-it: {20:4-20:6} to ".") 29 30 // RUN: %clang_cc1 -fsyntax-only -code-completion-with-fixits -code-completion-at=%s:24:5 %s -o - | FileCheck -check-prefix=CHECK-CC3 %s 31 // CHECK-CC3: x (requires fix-it: {24:4-24:5} to "->") 32 33 void test4(struct Point *p) { 34 (int)(p)->x; 35 (int)(0,1,2,3,4,p)->x; 36 } 37 // RUN: %clang_cc1 -fsyntax-only -code-completion-with-fixits -code-completion-at=%s:34:13 %s -o - | FileCheck -check-prefix=CHECK-CC1 %s 38 // RUN: %clang_cc1 -fsyntax-only -code-completion-with-fixits -code-completion-at=%s:35:23 %s -o - | FileCheck -check-prefix=CHECK-CC1 %s 39