blob: 53182e6506312ebbcd1133559a72b63c62550aaa [file] [log] [blame]
// PR c++/54922
// { dg-do compile { target c++11 } }
// { dg-options "-pedantic" }
#define SA(X) static_assert(X,#X)
struct A
{
union {
union {
union {
unsigned char i;
int j;
};
};
};
constexpr A() : i(42) {}
};
constexpr A a;
SA((a.i == 42));
struct B
{
struct { // { dg-warning "10:ISO C\\+\\+ prohibits anonymous struct" }
int h;
struct { // { dg-warning "12:ISO C\\+\\+ prohibits anonymous struct" }
union {
unsigned char i;
int j;
};
int k;
};
};
int l;
constexpr B(): h(1), i(2), k(3), l(4) {}
};
constexpr B b;
SA((b.h == 1 && b.i == 2 && b.k == 3 && b.l == 4));