llvm-for-llvmta/tools/clang/test/CXX/class/class.base/class.base.init/p5-0x.cpp

27 lines
715 B
C++
Raw Normal View History

2022-04-25 13:02:35 +02:00
// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s
// [class.base.init]p5
// A ctor-initializer may initialize a variant member of the constructors
// class. If a ctor-initializer specifies more than one mem-initializer for the
// same member or for the same base class, the ctor-initializer is ill-formed.
union E {
int a;
int b;
E() : a(1), // expected-note{{previous initialization is here}}
b(2) { // expected-error{{initializing multiple members of union}}
}
};
union F {
struct {
int a;
int b;
};
int c;
F() : a(1), // expected-note{{previous initialization is here}}
b(2),
c(3) { // expected-error{{initializing multiple members of union}}
}
};