1 struct Base1 {
Base1Base12 Base1() : {}
3 // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:2:12 %s -o - | FileCheck -check-prefix=CHECK-CC1 %s
4 // CHECK-CC1: COMPLETION: Pattern : member1(<#args#>)
5 // CHECK-CC1: COMPLETION: Pattern : member2(<#args#>
6
Base1Base17 Base1(int) : member1(123), {}
8 // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:7:30 %s -o - | FileCheck -check-prefix=CHECK-CC2 %s
9 // CHECK-CC2-NOT: COMPLETION: Pattern : member1(<#args#>)
10 // CHECK-CC2: COMPLETION: Pattern : member2(<#args#>
11
12 int member1;
13 float member2;
14 };
15
16 struct Derived : public Base1 {
17 Derived();
18 Derived(int);
19 Derived(float);
20 int deriv1;
21 };
22
Derived()23 Derived::Derived() : {}
24 // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:23:22 %s -o - | FileCheck -check-prefix=CHECK-CC3 %s
25 // CHECK-CC3: COMPLETION: Pattern : Base1(<#args#>)
26 // CHECK-CC3: COMPLETION: Pattern : deriv1(<#args#>)
27
Derived(int)28 Derived::Derived(int) try : {
29 } catch (...) {
30 }
31 // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:28:29 %s -o - | FileCheck -check-prefix=CHECK-CC4 %s
32 // CHECK-CC4: COMPLETION: Pattern : Base1(<#args#>)
33 // CHECK-CC4: COMPLETION: Pattern : deriv1(<#args#>)
34
Derived(float)35 Derived::Derived(float) try : Base1(),
36 {
37 } catch (...) {
38 }
39 // RUN: %clang_cc1 -fsyntax-only -code-completion-at=%s:35:39 %s -o - | FileCheck -check-prefix=CHECK-CC5 %s
40 // CHECK-CC5-NOT: COMPLETION: Pattern : Base1(<#args#>)
41 // CHECK-CC5: COMPLETION: Pattern : deriv1(<#args#>)
42