blob: 71c42633450e37aba8a3a72c59b664e6953e6f94 [file] [log] [blame]
// { dg-do assemble }
// g++ 1.37.1 bug 900519_09
// g++ allows the allocation of const objects via operator new even when
// these uses of operator new do not include initializations.
// This is inconsistant within the restrictions placed on the construction
// of class, struct, and union types which have constant members.
// Since there is no completely valid way of initializing such objects
// after the invocation of new, these cases should all be illegal.
// keywords: operator new, initialization, const qualifier
struct struct_0 {
int member;
};
typedef const int const_int;
typedef const struct struct_0 const_struct_0;
void test ()
{
new const int; // { dg-error "" }
new const_int; // { dg-error "" }
new const struct_0; // { dg-error "" }
new const_struct_0; // { dg-error "" }
}
int main () { return 0; }