1 // { dg-do assemble  }
2 // Copyright (C) 2000 Free Software Foundation, Inc.
3 // Contributed by Nathan Sidwell 7 Nov 2000 <nathan@codesourcery.com>
4 
5 // Bug 573. We ICE'd verifying operator new and operator delete conformed
6 // to the standard's expectation.
7 
8 void *operator new (__SIZE_TYPE__); // ok
9 void operator new (__SIZE_TYPE__);  // { dg-error "" } must return void *
10 void *operator new ();              // { dg-error "" } must take size_t
11 void *operator new (char);          // { dg-error "" } must take size_t
12 void *operator new (__SIZE_TYPE__, ...) throw(); // ok
13 
14 void operator delete (void *) throw (); // ok
15 int operator delete (void *) throw ();          // { dg-error "" } must return void
16 void operator delete () throw ();               // { dg-error "" } must take void *
17 void operator delete (int *) throw ();          // { dg-error "" } must take void *
18 void operator delete (void *, __SIZE_TYPE__) throw (); // ok
19 
20 void operator delete (...) throw ();             // { dg-error "" } must take void *
21 void operator delete (void *, ...) throw ();     // ok
22