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

            Bug ID: 96121
           Summary: Uninitialized variable copying not diagnosed
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Keywords: diagnostic
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: antoshkka at gmail dot com
  Target Milestone: ---

Consider the example:

struct A { A(); };
struct B { B(A); };

struct composed2 {
    B b_;
    A a_;
    composed2() : b_(a_)  {}
};


GCC does not diagnose the uninitialized variable `a_` usage with -Wall and
-Wextra. Some other compiler do diagnose:

warning: field 'a_' is uninitialized when used here [-Wuninitialized]
    composed2() : b_(a_)  {}
                     ^

Godbolt playground: https://godbolt.org/z/AbqzjR

Reply via email to