1 | // RUN: %clang_cc1 -emit-llvm -o - %s |
---|---|
2 | // pr5547 |
3 | |
4 | struct A { |
5 | void* operator new(__typeof(sizeof(int))); |
6 | A(); |
7 | }; |
8 | |
9 | A* x() { |
10 | return new A; |
11 | } |
12 | |
13 | struct B { |
14 | void* operator new(__typeof(sizeof(int)), int = 1, int = 4); |
15 | B(float); |
16 | }; |
17 | |
18 | B* y() { |
19 | new (3,4) B(1); |
20 | return new(1) B(2); |
21 | } |
22 | |
23 | struct C { |
24 | void* operator new(__typeof(sizeof(int)), int, int = 4); |
25 | C(); |
26 | }; |
27 | |
28 | C* z() { |
29 | new (3,4) C; |
30 | return new(1) C; |
31 | } |
32 | |
33 | |
34 |