https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102801

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
7, 8, 9 and 10 all warn:

mozilla_jwakely0/warn3.cpp: In function 'void foo(Q<C2>&, std::vector<C2>&)':
mozilla_jwakely0/warn3.cpp:8:7: warning: '<anonymous>.C::b' may be used
uninitialized in this function [-Wmaybe-uninitialized]
    8 | class C {
      |       ^

11 and trunk warn about that and also:

/home/jwakely/gcc/12/include/c++/12.0.0/bits/shared_ptr_base.h:709:19: warning:
'((const std::__shared_count<__gnu_cxx::_S_atomic>*)((char*)&<unnamed> +
offsetof(C2, C2::c.std::optional<C>::<unnamed>.std::_Optional_base<C, false,
false>::_M_payload.std::_Optional_payload<C, false, false,
false>::<unnamed>.std::_Optional_payload<C, true, false,
false>::<unnamed>.std::_Optional_payload_base<C>::_M_payload)))[2].std::__shared_count<>::_M_pi'
may be used uninitialized [-Wmaybe-uninitialized]
  709 |       : _M_pi(__r._M_pi)
      |               ~~~~^~~~~

Reply via email to