1 | // RUN: %clang_cc1 -triple x86_64-apple-darwin -std=c++11 -emit-llvm %s -o - | \ |
2 | // RUN: FileCheck %s |
3 | // RUN: %clang_cc1 -triple i386-apple-darwin -std=c++11 -emit-llvm %s -o - | \ |
4 | // RUN: FileCheck %s |
5 | |
6 | extern "C" int printf(...); |
7 | |
8 | |
9 | struct C { |
10 | C() : iC(6) {} |
11 | int iC; |
12 | }; |
13 | |
14 | int foo() { |
15 | return 6; |
16 | }; |
17 | |
18 | class X { // ... |
19 | public: |
20 | X(int) {} |
21 | X(const X&, int i = 1, int j = 2, int k = foo()) { |
22 | printf("X(const X&, %d, %d, %d)\n", i, j, k); |
23 | } |
24 | }; |
25 | |
26 | int main() { |
27 | X a(1); |
28 | X b(a, 2); |
29 | X c = b; |
30 | X d(a, 5, 6); |
31 | } |
32 | |
33 | // CHECK: call void @_ZN1XC1ERKS_iii |
34 | // CHECK: call void @_ZN1XC1ERKS_iii |
35 | // CHECK: call void @_ZN1XC1ERKS_iii |
36 | |