1struct ClassWithImplicitCtor {
2 int foo() { return 1; }
3};
4
5struct ClassWithDefaultedCtor {
6 ClassWithDefaultedCtor() = default;
7 int foo() { return 2; }
8};
9
10struct ClassWithOneCtor {
11 int value;
12 ClassWithOneCtor(int i) { value = i; }
13};
14
15struct ClassWithMultipleCtor {
16 int value;
17 ClassWithMultipleCtor(int i) { value = i; }
18 ClassWithMultipleCtor(int i, int v) { value = v + i; }
19};
20
21struct ClassWithDeletedCtor {
22 int value;
23 ClassWithDeletedCtor() { value = 6; }
24 ClassWithDeletedCtor(int i) = delete;
25};
26
27struct ClassWithDeletedDefaultCtor {
28 int value;
29 ClassWithDeletedDefaultCtor() = delete;
30 ClassWithDeletedDefaultCtor(int i) { value = i; }
31};
32
33int main() {
34 ClassWithImplicitCtor C1;
35 C1.foo();
36 ClassWithDefaultedCtor C2;
37 C2.foo();
38 ClassWithOneCtor C3(22);
39 ClassWithMultipleCtor C4(23);
40 ClassWithMultipleCtor C5(24, 25);
41 ClassWithDeletedCtor C6;
42 ClassWithDeletedDefaultCtor C7(26);
43
44 return 0; // break here
45}
46

source code of lldb/test/API/lang/cpp/constructors/main.cpp