From e7f067567278e04ce4cc40cc08651980ad7f3004 Mon Sep 17 00:00:00 2001 From: Douglas Gregor Date: Wed, 2 Nov 2011 23:39:56 +0000 Subject: [PATCH] Test code completion for constructor initializers within the class definition. This already worked; . llvm-svn: 143595 --- .../test/Index/complete-cxx-inline-methods.cpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/clang/test/Index/complete-cxx-inline-methods.cpp b/clang/test/Index/complete-cxx-inline-methods.cpp index e25949df4cab..48fa8683af41 100644 --- a/clang/test/Index/complete-cxx-inline-methods.cpp +++ b/clang/test/Index/complete-cxx-inline-methods.cpp @@ -12,6 +12,15 @@ void MyCls::out_foo() { vec.x = 0; } +class OtherClass : public MyCls { +public: + OtherClass(const OtherClass &other) : MyCls(other), value(value) { } + +private: + int value; + MyCls *object; +}; + // RUN: c-index-test -code-completion-at=%s:3:9 %s | FileCheck %s // RUN: c-index-test -code-completion-at=%s:12:7 %s | FileCheck %s // CHECK: CXXMethod:{ResultType MyCls::Vec &}{TypedText operator=}{LeftParen (}{Placeholder const MyCls::Vec &}{RightParen )} (34) @@ -22,3 +31,12 @@ void MyCls::out_foo() { // CHECK-NEXT: Completion contexts: // CHECK-NEXT: Dot member access // CHECK-NEXT: Container Kind: StructDecl + +// RUN: c-index-test -code-completion-at=%s:17:41 %s | FileCheck -check-prefix=CHECK-CTOR-INIT %s +// CHECK-CTOR-INIT: NotImplemented:{TypedText MyCls}{LeftParen (}{Placeholder args}{RightParen )} (7) +// CHECK-CTOR-INIT: MemberRef:{TypedText object}{LeftParen (}{Placeholder args}{RightParen )} (35) +// CHECK-CTOR-INIT: MemberRef:{TypedText value}{LeftParen (}{Placeholder args}{RightParen )} (35) +// RUN: c-index-test -code-completion-at=%s:17:55 %s | FileCheck -check-prefix=CHECK-CTOR-INIT-2 %s +// CHECK-CTOR-INIT-2-NOT: NotImplemented:{TypedText MyCls}{LeftParen (}{Placeholder args}{RightParen )} +// CHECK-CTOR-INIT-2: MemberRef:{TypedText object}{LeftParen (}{Placeholder args}{RightParen )} (35) +// CHECK-CTOR-INIT-2: MemberRef:{TypedText value}{LeftParen (}{Placeholder args}{RightParen )} (7)