summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/dcl_init_aggr.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-12-19 03:01:41 +0000
committerDouglas Gregor <dgregor@apple.com>2009-12-19 03:01:41 +0000
commita4b592a7d5892001b53f51fe936c77d340e6df38 (patch)
treeed409ff8cc553a6b1fba5db61af72bbefc8e0c8d /clang/test/SemaCXX/dcl_init_aggr.cpp
parent04cc307eddae4681709cb4f019e5f9363e0506c3 (diff)
downloadbcm5719-llvm-a4b592a7d5892001b53f51fe936c77d340e6df38.tar.gz
bcm5719-llvm-a4b592a7d5892001b53f51fe936c77d340e6df38.zip
Switch more of Sema::CheckInitializerTypes over to
InitializationSequence. Specially, switch initialization of a C++ class type (either copy- or direct-initialization). Also, make sure that we create an elidable copy-construction when performing copy initialization of a C++ class variable. Fixes PR5826. llvm-svn: 91750
Diffstat (limited to 'clang/test/SemaCXX/dcl_init_aggr.cpp')
-rw-r--r--clang/test/SemaCXX/dcl_init_aggr.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/test/SemaCXX/dcl_init_aggr.cpp b/clang/test/SemaCXX/dcl_init_aggr.cpp
index f7dc8f11c70..98aa7218f56 100644
--- a/clang/test/SemaCXX/dcl_init_aggr.cpp
+++ b/clang/test/SemaCXX/dcl_init_aggr.cpp
@@ -115,9 +115,9 @@ B2 b2_2 = { 4, d2, 0 };
B2 b2_3 = { c2, a2, a2 };
// C++ [dcl.init.aggr]p15:
-union u { int a; char* b; };
+union u { int a; char* b; }; // expected-note{{candidate function}}
u u1 = { 1 };
u u2 = u1;
-u u3 = 1; // expected-error{{cannot initialize 'u3' with an rvalue of type 'int'}}
+u u3 = 1; // expected-error{{no viable conversion}}
u u4 = { 0, "asdf" }; // expected-error{{excess elements in union initializer}}
u u5 = { "asdf" }; // expected-error{{incompatible type initializing 'char const [5]', expected 'int'}}
OpenPOWER on IntegriCloud