1*67e74705SXin Li // This test is line- and column-sensitive, so test commands are at the bottom. 2*67e74705SXin Li namespace N { 3*67e74705SXin Li struct X { 4*67e74705SXin Li int f(X); 5*67e74705SXin Li }; 6*67e74705SXin Li } 7*67e74705SXin Li 8*67e74705SXin Li int g(int a); 9*67e74705SXin Li 10*67e74705SXin Li struct Y { }; 11*67e74705SXin Li 12*67e74705SXin Li struct Z { 13*67e74705SXin Li int member; 14*67e74705SXin Li friend int N::X::f(N::X); 15*67e74705SXin Li }; 16*67e74705SXin Li 17*67e74705SXin Li // RUN: c-index-test -code-completion-at=%s:8:5 %s | FileCheck -check-prefix=CHECK-CC1 %s 18*67e74705SXin Li // RUN: env CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:8:5 %s | FileCheck -check-prefix=CHECK-CC1 %s 19*67e74705SXin Li // CHECK-CC1: NotImplemented:{TypedText const} (40) 20*67e74705SXin Li // CHECK-CC1: Namespace:{TypedText N}{Text ::} (75) 21*67e74705SXin Li // CHECK-CC1: NotImplemented:{TypedText operator} (40) 22*67e74705SXin Li // CHECK-CC1: NotImplemented:{TypedText volatile} (40) 23*67e74705SXin Li // RUN: c-index-test -code-completion-at=%s:8:11 %s | FileCheck -check-prefix=CHECK-CC2 %s 24*67e74705SXin Li // RUN: env CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:8:11 %s | FileCheck -check-prefix=CHECK-CC2 %s 25*67e74705SXin Li // CHECK-CC2: NotImplemented:{TypedText const} (40) 26*67e74705SXin Li // CHECK-CC2-NOT: Namespace:{TypedText N}{Text ::} (75) 27*67e74705SXin Li // CHECK-CC2-NOT: NotImplemented:{TypedText operator} (40) 28*67e74705SXin Li // CHECK-CC2: NotImplemented:{TypedText volatile} (40) 29*67e74705SXin Li // RUN: c-index-test -code-completion-at=%s:13:7 %s | FileCheck -check-prefix=CHECK-CC3 %s 30*67e74705SXin Li // RUN: env CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:13:7 %s | FileCheck -check-prefix=CHECK-CC3 %s 31*67e74705SXin Li // CHECK-CC3: NotImplemented:{TypedText const} (40) 32*67e74705SXin Li // CHECK-CC3-NOT: Namespace:{TypedText N}{Text ::} (75) 33*67e74705SXin Li // CHECK-CC3: NotImplemented:{TypedText operator} (40) 34*67e74705SXin Li // CHECK-CC3: NotImplemented:{TypedText volatile} (40) 35*67e74705SXin Li // RUN: c-index-test -code-completion-at=%s:14:14 %s | FileCheck -check-prefix=CHECK-CC4 %s 36*67e74705SXin Li // RUN: env CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_CACHING=1 c-index-test -code-completion-at=%s:14:14 %s | FileCheck -check-prefix=CHECK-CC4 %s 37*67e74705SXin Li // CHECK-CC4: NotImplemented:{TypedText const} (40) 38*67e74705SXin Li // CHECK-CC4: Namespace:{TypedText N}{Text ::} (75) 39*67e74705SXin Li // CHECK-CC4: NotImplemented:{TypedText operator} (40) 40*67e74705SXin Li // CHECK-CC4: NotImplemented:{TypedText volatile} (40) 41*67e74705SXin Li // CHECK-CC4: StructDecl:{TypedText Y}{Text ::} (75) 42*67e74705SXin Li // CHECK-CC4: StructDecl:{TypedText Z}{Text ::} (75) 43*67e74705SXin Li 44