p6.cpp revision 516a6bc399f1f4595423e80c9d4bc687f870acd1
1// RUN: %clang_cc1 -fsyntax-only -verify %s 2 3// FIXME: Very incomplete! 4 5// If a program calls for the default initialization of an object of a 6// const-qualified type T, T shall be a class type with a 7// user-provided default constructor. 8struct MakeNonPOD { MakeNonPOD(); }; 9struct NoUserDefault : public MakeNonPOD { }; 10struct HasUserDefault { HasUserDefault(); }; 11 12void test_const_default_init() { 13 const NoUserDefault x1; // expected-error{{default initialization of an object of const type 'struct NoUserDefault const' requires a user-provided default constructor}} 14 const HasUserDefault x2; 15 const int x3; // expected-error{{default initialization of an object of const type 'int const'}} 16} 17