2010-04-20 10:18:25 +08:00
|
|
|
// RUN: %clang_cc1 -fsyntax-only -verify -std=c++0x -fexceptions %s
|
2010-02-26 13:06:18 +08:00
|
|
|
typedef __SIZE_TYPE__ size_t;
|
|
|
|
|
|
|
|
struct S {
|
|
|
|
// Placement allocation function:
|
|
|
|
static void* operator new(size_t, size_t);
|
|
|
|
// Usual (non-placement) deallocation function:
|
|
|
|
static void operator delete(void*, size_t); // expected-note{{declared here}}
|
|
|
|
};
|
|
|
|
|
|
|
|
void testS() {
|
|
|
|
S* p = new (0) S; // expected-error{{'new' expression with placement arguments refers to non-placement 'operator delete'}}
|
|
|
|
}
|