Viewing file: Wuninitialized-29.C (1.12 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
// PR c++/19808 // { dg-do compile { target c++11 } } // { dg-options "-Wuninitialized" }
struct S { int i, j, k, l; S() : i{j}, // { dg-warning "member .S::j. is used uninitialized" } j{1}, k{l + 1}, // { dg-warning "member .S::l. is used uninitialized" } l{2} { } };
struct A { int a, b, c; A() : a{b // { dg-warning "member .A::b. is used uninitialized" } + c} { } // { dg-warning "member .A::c. is used uninitialized" } };
struct B { int &r; int *p; int a; B() : r{a}, p{&a}, a{1} { } };
struct C { const int &r1, &r2; C () : r1{r2}, // { dg-warning "reference .C::r2. is not yet bound to a value when used here" } r2{r1} { } };
struct D { int a = 1; int b = 2; D() : a{b + 1}, b{a + 1} { } // { dg-warning "member .D::b. is used uninitialized" } };
struct E { int a = 1; E() : a{a + 1} { } // { dg-warning "member .E::a. is used uninitialized" } };
struct F { int a = 1; int b; F() : b{a + 1} { } };
struct bar { int a; bar() {} bar(bar&) {} };
class foo { bar first; bar second; public: foo() : first{second} {} // { dg-warning "member .foo::second. is used uninitialized" } };
|