summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/value-initialization.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/SemaCXX/value-initialization.cpp')
-rw-r--r--clang/test/SemaCXX/value-initialization.cpp19
1 files changed, 3 insertions, 16 deletions
diff --git a/clang/test/SemaCXX/value-initialization.cpp b/clang/test/SemaCXX/value-initialization.cpp
index 6b992973614..29d866fa64d 100644
--- a/clang/test/SemaCXX/value-initialization.cpp
+++ b/clang/test/SemaCXX/value-initialization.cpp
@@ -1,23 +1,10 @@
// RUN: clang-cc -fsyntax-only -verify %s -std=c++0x
struct A {
- ~A();
- const int i; // expected-note {{declared at}}
-};
-
-struct B {
- // B is a non-POD with no user-written constructor.
- // It has a nontrivial generated constructor.
- const int i[12]; // expected-note {{declared at}}
- A a;
+ const int i; // expected-note {{declared at}}
+ virtual void f() { }
};
int main () {
- // Value-initializing a "B" doesn't call the default constructor for
- // "B"; it value-initializes the members of B. Therefore it shouldn't
- // cause an error on generation of the default constructor for the
- // following:
- new B(); // expected-error {{cannot define the implicit default constructor for 'struct B', because const member 'i'}}
- (void)B();
- (void)A(); // expected-error {{cannot define the implicit default constructor for 'struct A', because const member 'i'}}
+ (void)A(); // expected-error {{cannot define the implicit default constructor for 'struct A', because const member 'i' cannot be default-initialized}}
}
OpenPOWER on IntegriCloud