Compiling this file for NetWare, or, after pre-processing it and stripping down
to a reasonably small one, natively for Linux produces "'d' is used
uninitialized in this function".

While the original code in libstdc++ looks broken (which will be reported as a
separate bug), the warning and the generated code are incorrect, since 'd'
definitely gets constructed at source level.

Neither the waring nor the incorrect code generation can be observed at -O1.

I will attach the stripped-down, usable on plain Linux, example in a second.


-- 
           Summary: mis-optimization of libstdc++'s
                    atomic.cc:__atomic_flag_wait_explicit() at -O2
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: jbeulich at novell dot com
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40825

Reply via email to