| // { dg-do compile } | |
| // { dg-require-effective-target c++11 } | |
| // { dg-options "-O2 -Wuninitialized" } | |
| int f1(); | |
| int f2(){ | |
| bool v2{v2}; // { dg-warning "is used uninitialized" } | |
| auto const & a = f1(); | |
| return a; | |
| } | |
| int f3(){ | |
| auto const & a = f1(); | |
| // Diagnose the following when optimizing and as unconditional | |
| // uninitialized use despite f1 possibly throwing | |
| bool v3{v3}; // { dg-warning "is used uninitialized" } | |
| return a; | |
| } |