summaryrefslogtreecommitdiff
path: root/clang/test/Index/complete-with-annotations.cpp
blob: afa8d9ed660709abdfba6c5ca3b78b9cb6ded013 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
class X {
  void doSomething();

  int field __attribute((annotate("one"), annotate("two"), annotate("three")));

public __attribute__((annotate("some annotation"))):
  void func2();
  int member2 __attribute__((annotate("another annotation")));
};

void X::doSomething() {
  // RUN: c-index-test -code-completion-at=%s:13:9 %s | FileCheck %s
  this->;
}

// CHECK: CXXMethod:{ResultType void}{TypedText doSomething}{LeftParen (}{RightParen )} (34)
// CHECK: FieldDecl:{ResultType int}{TypedText field} (35) ("three", "two", "one")
// CHECK: CXXMethod:{ResultType void}{TypedText func2}{LeftParen (}{RightParen )} (34) ("some annotation")
// CHECK: FieldDecl:{ResultType int}{TypedText member2} (35) ("another annotation", "some annotation")
// CHECK: CXXMethod:{ResultType X &}{TypedText operator=}{LeftParen (}{Placeholder const X &}{RightParen )} (34)
// CHECK: ClassDecl:{TypedText X}{Text ::} (75)
// CHECK: CXXDestructor:{ResultType void}{TypedText ~X}{LeftParen (}{RightParen )} (34)