blob: cebadf1c269ef214cc986236f59ffa24fe781bde [file] [log] [blame]
// PR c++/19808
// { dg-do compile { target c++11 } }
// { dg-options "-Wuninitialized" }
struct A {
int m;
int get() const { return m; }
A() : m{} { }
A(int) { }
A(const A &) { }
A(A *) { }
};
struct S {
A a, b;
S(int (*)[1]) : a() {}
S(int (*)[2]) : b(a.get()) {}
S(int (*)[3]) : b(a) {}
S(int (*)[4]) : a(&a) {}
};
struct R {
A a, b;
R(int (*)[1]) : a{} {}
R(int (*)[2]) : b{a.get()} {}
R(int (*)[3]) : b{a} {}
R(int (*)[4]) : a{&a} {}
};