| // RUN: %clang_cc1 -emit-llvm -o - %s | |
| // pr5547 | |
| struct A { | |
| void* operator new(__typeof(sizeof(int))); | |
| A(); | |
| }; | |
| A* x() { | |
| return new A; | |
| } | |
| struct B { | |
| void* operator new(__typeof(sizeof(int)), int = 1, int = 4); | |
| B(float); | |
| }; | |
| B* y() { | |
| new (3,4) B(1); | |
| return new(1) B(2); | |
| } | |
| struct C { | |
| void* operator new(__typeof(sizeof(int)), int, int = 4); | |
| C(); | |
| }; | |
| C* z() { | |
| new (3,4) C; | |
| return new(1) C; | |
| } | |