27 lines
715 B
C++
27 lines
715 B
C++
// RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s
|
||
|
||
// [class.base.init]p5
|
||
// A ctor-initializer may initialize a variant member of the constructor’s
|
||
// 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}}
|
||
}
|
||
};
|