* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
@ 2012-12-10 22:19 ` matt at use dot net
2012-12-11 10:07 ` rguenth at gcc dot gnu.org
` (12 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: matt at use dot net @ 2012-12-10 22:19 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
Matt Hargett <matt at use dot net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|profiledbootstrap fails on |bootstrap-lto fails on
|current trunk |current trunk (with and
| |without profiledbootstrap)
--- Comment #1 from Matt Hargett <matt at use dot net> 2012-12-10 22:19:23 UTC ---
Just tested with plain bootstrap-lto, and it gets the same failure:
../../gcc-trunk/gcc/cfg.c: In function
‘scale_bbs_frequencies_gcov_type(basic_block_def**, int, long, long)’:
../../gcc-trunk/gcc/cfg.c:945:8: error: ‘e’ may be used uninitialized in this
function [-Werror=maybe-uninitialized]
edge e;
^
/work/mhargett/gcc-trunk-obj/./prev-gcc/xg++
-B/work/mhargett/gcc-trunk-obj/./prev-gcc/
-B/u/mhargett/x86_64-unknown-linux-gnu/bin/ -nostdinc++
-B/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-I/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include
-I/work/mhargett/gcc-trunk/libstdc++-v3/libsupc++
-L/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-c -g -O2 -flto=jobserver -frandom-seed=1 -fprofile-use -DIN_GCC
-fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing
-Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common
-DHAVE_CONFIG_H -I. -I. -I../../gcc-trunk/gcc -I../../gcc-trunk/gcc/.
-I../../gcc-trunk/gcc/../include -I../../gcc-trunk/gcc/../libcpp/include
-I/u/mhargett//include -I/u/mhargett//include -I/u/mhargett/include
-I../../gcc-trunk/gcc/../libdecnumber -I../../gcc-trunk/gcc/../libdecnumber/bid
-I../libdecnumber -I../../gcc-trunk/gcc/../libbacktrace -DCLOOG_INT_GMP
-I/u/mhargett//include -I/u/mhargett/include ../../gcc-trunk/gcc/cfgexpand.c
-o cfgexpand.o
cc1plus: all warnings being treated as errors
make[3]: *** [cfg.o] Error 1
make[3]: *** Waiting for unfinished jobs....
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
2012-12-10 22:19 ` [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap) matt at use dot net
@ 2012-12-11 10:07 ` rguenth at gcc dot gnu.org
2012-12-11 10:54 ` rguenth at gcc dot gnu.org
` (11 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-12-11 10:07 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> 2012-12-11 10:07:23 UTC ---
That would be a bogus warning ... all uses of e are within FOR_EACH_EDGE.
Trying to reproduce.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
2012-12-10 22:19 ` [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap) matt at use dot net
2012-12-11 10:07 ` rguenth at gcc dot gnu.org
@ 2012-12-11 10:54 ` rguenth at gcc dot gnu.org
2012-12-11 13:57 ` hjl.tools at gmail dot com
` (10 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-12-11 10:54 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> 2012-12-11 10:53:53 UTC ---
works for me ...
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (2 preceding siblings ...)
2012-12-11 10:54 ` rguenth at gcc dot gnu.org
@ 2012-12-11 13:57 ` hjl.tools at gmail dot com
2013-02-06 1:23 ` matt at use dot net
` (9 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: hjl.tools at gmail dot com @ 2012-12-11 13:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2012-12-11
Ever Confirmed|0 |1
--- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> 2012-12-11 13:56:47 UTC ---
This may be related to
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55519
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55496
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (3 preceding siblings ...)
2012-12-11 13:57 ` hjl.tools at gmail dot com
@ 2013-02-06 1:23 ` matt at use dot net
2013-02-06 9:55 ` rguenth at gcc dot gnu.org
` (8 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: matt at use dot net @ 2013-02-06 1:23 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #5 from Matt Hargett <matt at use dot net> 2013-02-06 01:23:02 UTC ---
the latest failure, with current trunk:
/work/mhargett/gcc-trunk-obj/./prev-gcc/xg++
-B/work/mhargett/gcc-trunk-obj/./prev-gcc/
-B/u/mhargett/x86_64-unknown-linux-gnu/bin/ -nostdinc++
-B/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-I/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include
-I/work/mhargett/gcc-trunk/libstdc++-v3/libsupc++
-L/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/work/mhargett/gcc-trunk-obj/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-g -O2 -O3 -march=nocona -mtune=core2 -floop-block -floop-interchange
-floop-strip-mine -flto=jobserver -frandom-seed=1 -DIN_GCC -fno-exceptions
-fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings
-Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long
-Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common
-DHAVE_CONFIG_H -static-libstdc++ -static-libgcc gcc-ar.o -o gcc-ar \
file-find.o libcommon.a ../libcpp/libcpp.a
../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a
../libdecnumber/libdecnumber.a
In file included from ../../gcc-trunk/libbacktrace/mmapio.c:116:0,
from :61:
../../gcc-trunk/libbacktrace/elf.c: In function 'elf_add':
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.len' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
In file included from ../../gcc-trunk/libbacktrace/mmapio.c:119:0,
from :61:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.len' was declared
here
struct backtrace_view ehdr_view;
^
In file included from ../../gcc-trunk/libbacktrace/mmapio.c:116:0,
from :61:
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.base' may be
used uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
In file included from ../../gcc-trunk/libbacktrace/mmapio.c:119:0,
from :61:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.base' was declared
here
struct backtrace_view ehdr_view;
^
In file included from ../../gcc-trunk/libbacktrace/mmapio.c:119:0,
from :61:
../../gcc-trunk/libbacktrace/elf.c:516:10: error: 'ehdr_view.data' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
memcpy (&ehdr, ehdr_view.data, sizeof ehdr);
^
In file included from ../../gcc-trunk/libbacktrace/mmapio.c:119:0,
from :61:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.data' was declared
here
struct backtrace_view ehdr_view;
^
lto1: all warnings being treated as errors
make[4]: *** [/tmp/cc68SyuG.ltrans2.ltrans.o] Error 1
make[4]: *** Waiting for unfinished jobs....
lto-wrapper: make returned 2 exit status
/u/mhargett/x86_64-unknown-linux-gnu/bin/ld: lto-wrapper failed
collect2: error: ld returned 1 exit status
make[3]: *** [gcov-dump] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:877:0,
from :73:
../../gcc-trunk/libbacktrace/elf.c: In function 'backtrace_initialize':
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.len' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:879:0,
from :73:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.len' was declared
here
struct backtrace_view ehdr_view;
^
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:877:0,
from :73:
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.base' may be
used uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:879:0,
from :73:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.base' was declared
here
struct backtrace_view ehdr_view;
^
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:879:0,
from :73:
../../gcc-trunk/libbacktrace/elf.c:516:10: error: 'ehdr_view.data' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
memcpy (&ehdr, ehdr_view.data, sizeof ehdr);
^
lto1: all warnings being treated as errors
make[4]: *** [/tmp/ccqV4nuG.ltrans13.ltrans.o] Error 1
lto-wrapper: make returned 2 exit status
/u/mhargett/x86_64-unknown-linux-gnu/bin/ld: lto-wrapper failed
collect2: error: ld returned 1 exit status
make[3]: *** [gcov] Error 1
In file included from ../../gcc-trunk/libbacktrace/dwarf.c:398:0,
from :154:
../../gcc-trunk/libbacktrace/elf.c: In function 'elf_add':
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.len' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
In file included from ../../gcc-trunk/libbacktrace/dwarf.c:401:0,
from :154:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.len' was declared
here
struct backtrace_view ehdr_view;
^
In file included from ../../gcc-trunk/libbacktrace/dwarf.c:398:0,
from :154:
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.base' may be
used uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
In file included from ../../gcc-trunk/libbacktrace/dwarf.c:401:0,
from :154:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.base' was declared
here
struct backtrace_view ehdr_view;
^
In file included from ../../gcc-trunk/libbacktrace/dwarf.c:401:0,
from :154:
../../gcc-trunk/libbacktrace/elf.c:516:10: error: 'ehdr_view.data' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
memcpy (&ehdr, ehdr_view.data, sizeof ehdr);
^
In file included from ../../gcc-trunk/libbacktrace/dwarf.c:401:0,
from :154:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.data' was declared
here
struct backtrace_view ehdr_view;
^
lto1: all warnings being treated as errors
make[4]: *** [/tmp/ccybddqW.ltrans4.ltrans.o] Error 1
make[4]: *** Waiting for unfinished jobs....
lto-wrapper: make returned 2 exit status
/u/mhargett/x86_64-unknown-linux-gnu/bin/ld: lto-wrapper failed
collect2: error: ld returned 1 exit status
make[3]: *** [collect2] Error 1
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:877:0,
from :59:
../../gcc-trunk/libbacktrace/elf.c: In function 'backtrace_initialize':
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.len' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:879:0,
from :59:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.len' was declared
here
struct backtrace_view ehdr_view;
^
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:877:0,
from :59:
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.base' may be
used uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:879:0,
from :59:
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.base' was declared
here
struct backtrace_view ehdr_view;
^
In file included from ../../gcc-trunk/libiberty/cp-demangle.c:879:0,
from :59:
../../gcc-trunk/libbacktrace/elf.c:516:10: error: 'ehdr_view.data' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
memcpy (&ehdr, ehdr_view.data, sizeof ehdr);
^
lto1: all warnings being treated as errors
make[4]: *** [/tmp/ccG7WpE4.ltrans21.ltrans.o] Error 1
make[4]: *** Waiting for unfinished jobs....
In file included from ../../gcc-trunk/libiberty/simple-object.c:426:0,
from :35:
../../gcc-trunk/libiberty/simple-object-mach-o.c: In function
'simple_object_mach_o_find_sections':
../../gcc-trunk/libiberty/simple-object-mach-o.c:653:37: error:
'wrapper_sect_offset' may be used uninitialized in this function
[-Werror=maybe-uninitialized]
secoffset = wrapper_sect_offset + subsect_offset;
^
lto1: all warnings being treated as errors
make[4]: *** [/tmp/ccG7WpE4.ltrans22.ltrans.o] Error 1
lto-wrapper: make returned 2 exit status
/u/mhargett/x86_64-unknown-linux-gnu/bin/ld: lto-wrapper failed
collect2: error: ld returned 1 exit status
make[3]: *** [lto-wrapper] Error 1
rm cpp.pod gfdl.pod gcov.pod fsf-funding.pod gcc.pod
make[3]: Leaving directory `/work/mhargett/gcc-trunk-obj/gcc'
make[2]: *** [all-stage2-gcc] Error 2
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (4 preceding siblings ...)
2013-02-06 1:23 ` matt at use dot net
@ 2013-02-06 9:55 ` rguenth at gcc dot gnu.org
2013-02-14 18:01 ` matt at use dot net
` (7 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-02-06 9:55 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> 2013-02-06 09:55:04 UTC ---
I start to believe we should arrange for --disable-werror for any non-standard
build config ... testing matrix is simply too large and mostly false positives
pop up.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (5 preceding siblings ...)
2013-02-06 9:55 ` rguenth at gcc dot gnu.org
@ 2013-02-14 18:01 ` matt at use dot net
2013-02-14 18:47 ` hjl.tools at gmail dot com
` (6 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: matt at use dot net @ 2013-02-14 18:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #7 from Matt Hargett <matt at use dot net> 2013-02-14 18:00:57 UTC ---
Sorry, but wouldn't that be "papering over bugs"? I'm confounded by the
attitude around bootstrap failures, regardless of the basic supported options
being used: -O3 with LTO and profile-use. This combination has been in use in 3
different companies I have worked with, since 4.6.x. If it's not a supported
configuration to the point where an FSF GCC release can't bootstrap itself
consistently without wrong-code/diagnostic false positives, then I'll just plan
on sticking to vendor branches -- something I don't want to do since I would
prefer not to have another EGCS situation.
Let me know how to proceed with these classes of issues.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (6 preceding siblings ...)
2013-02-14 18:01 ` matt at use dot net
@ 2013-02-14 18:47 ` hjl.tools at gmail dot com
2013-02-15 9:42 ` rguenth at gcc dot gnu.org
` (5 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: hjl.tools at gmail dot com @ 2013-02-14 18:47 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #8 from H.J. Lu <hjl.tools at gmail dot com> 2013-02-14 18:47:12 UTC ---
-O3 and -fprofile-use turn on optimizations like -funroll-loops which
trigger false positive warnings.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (7 preceding siblings ...)
2013-02-14 18:47 ` hjl.tools at gmail dot com
@ 2013-02-15 9:42 ` rguenth at gcc dot gnu.org
2013-03-01 23:12 ` matt at use dot net
` (4 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2013-02-15 9:42 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Severity|major |normal
--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> 2013-02-15 09:42:12 UTC ---
(In reply to comment #7)
> Sorry, but wouldn't that be "papering over bugs"? I'm confounded by the
> attitude around bootstrap failures, regardless of the basic supported options
> being used: -O3 with LTO and profile-use. This combination has been in use in 3
> different companies I have worked with, since 4.6.x. If it's not a supported
> configuration to the point where an FSF GCC release can't bootstrap itself
> consistently without wrong-code/diagnostic false positives, then I'll just plan
> on sticking to vendor branches -- something I don't want to do since I would
> prefer not to have another EGCS situation.
>
> Let me know how to proceed with these classes of issues.
Well, the issue is that the testing matrix with all available build-configs
is simply too large to reliably keep things working with --enable-werror.
Note that for release branches --disable-werror is the default, so you
will see extra warnings but not errors.
Normal issue, an easy workaround exists.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] bootstrap-lto fails on current trunk (with and without profiledbootstrap)
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (8 preceding siblings ...)
2013-02-15 9:42 ` rguenth at gcc dot gnu.org
@ 2013-03-01 23:12 ` matt at use dot net
2013-03-01 23:35 ` [Bug bootstrap/55644] maybe-uninitialized false positive matt at use dot net
` (3 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: matt at use dot net @ 2013-03-01 23:12 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #10 from Matt Hargett <matt at use dot net> 2013-03-01 23:11:50 UTC ---
I'll file a new bug for each warning false positive that results in a bootstrap
failure. Feel free to close this one.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug bootstrap/55644] maybe-uninitialized false positive
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (9 preceding siblings ...)
2013-03-01 23:12 ` matt at use dot net
@ 2013-03-01 23:35 ` matt at use dot net
2013-03-01 23:39 ` [Bug middle-end/55644] maybe-uninitialized false positive due to incorrect flow analysis when gotos are present matt at use dot net
` (2 subsequent siblings)
13 siblings, 0 replies; 15+ messages in thread
From: matt at use dot net @ 2013-03-01 23:35 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
Matt Hargett <matt at use dot net> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|bootstrap-lto fails on |maybe-uninitialized false
|current trunk (with and |positive
|without profiledbootstrap) |
--- Comment #11 from Matt Hargett <matt at use dot net> 2013-03-01 23:34:53 UTC ---
The current false positives emitted:
mhargett@chert:/work/mhargett/gcc-trunk-lto-O3-debug/gcc$
/work/mhargett/gcc-trunk-lto-O3-debug/./prev-gcc/xg++
-B/work/mhargett/gcc-trunk-lto-O3-debug/./prev-gcc/
-B/u/mhargett/x86_64-unknown-linux-gnu/bin/ -nostdinc++
-B/work/mhargett/gcc-trunk-lto-O3-debug/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/work/mhargett/gcc-trunk-lto-O3-debug/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-I/work/mhargett/gcc-trunk-lto-O3-debug/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include/x86_64-unknown-linux-gnu
-I/work/mhargett/gcc-trunk-lto-O3-debug/prev-x86_64-unknown-linux-gnu/libstdc++-v3/include
-I/work/mhargett/gcc-trunk/libstdc++-v3/libsupc++
-L/work/mhargett/gcc-trunk-lto-O3-debug/prev-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
-L/work/mhargett/gcc-trunk-lto-O3-debug/prev-x86_64-unknown-linux-gnu/libstdc++-v3/libsupc++/.libs
-O3 -g -flto=jobserver -flto-partition=none -frandom-seed=1 -gtoggle -DIN_GCC
-fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall
-Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic
-Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common
-DHAVE_CONFIG_H -static-libstdc++ -static-libgcc gcov-dump.o
libcommon.a ../libcpp/libcpp.a ../libbacktrace/.libs/libbacktrace.a
../libiberty/libiberty.a ../libdecnumber/libdecnumber.a -o gcov-dump
../../gcc-trunk/libbacktrace/elf.c: In function 'elf_add':
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.len' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.len' was declared
here
struct backtrace_view ehdr_view;
^
../../gcc-trunk/libbacktrace/mmapio.c:98:14: error: 'ehdr_view.base' may be
used uninitialized in this function [-Werror=maybe-uninitialized]
if (munmap (const_cast.v, view->len) < 0)
^
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.base' was declared
here
struct backtrace_view ehdr_view;
^
../../gcc-trunk/libbacktrace/elf.c:516:10: error: 'ehdr_view.data' may be used
uninitialized in this function [-Werror=maybe-uninitialized]
memcpy (&ehdr, ehdr_view.data, sizeof ehdr);
^
../../gcc-trunk/libbacktrace/elf.c:476:25: note: 'ehdr_view.data' was declared
here
struct backtrace_view ehdr_view;
^
which is a false positive, because
ehdr_view's fields are correctly initialized via a call from elf_add() to
backtrace_get_view()
view->data = (char *) map + inpage;
view->base = map;
view->len = size;
if the mmap() earlier in the backtrace_get_view() didn't fail, view is
initialized and the backtrace_get_view() returns 1. if that mmap() fails, view
remains uninitialized and backtrace_get_view() returns 0.
elf_add()'s invocation checks the return value of backtrace_get_view(). in the
0 (failure) case, backtrace_release_view() is never invoked:
if (!backtrace_get_view (state, descriptor, 0, sizeof ehdr, error_callback,
data, &ehdr_view))
goto fail;
since backtrace_release_view() is never called in the case where the fields are
uninitialized, the warning is a false positive. while it occurs here with the
confluence of several optimizations, it looks like the same problem would
happen in a contrived single-file case.
attached are the temp files for the module the generated this false positive.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug middle-end/55644] maybe-uninitialized false positive due to incorrect flow analysis when gotos are present
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (10 preceding siblings ...)
2013-03-01 23:35 ` [Bug bootstrap/55644] maybe-uninitialized false positive matt at use dot net
@ 2013-03-01 23:39 ` matt at use dot net
2013-03-04 5:52 ` d.g.gorbachev at gmail dot com
2021-04-12 20:12 ` msebor at gcc dot gnu.org
13 siblings, 0 replies; 15+ messages in thread
From: matt at use dot net @ 2013-03-01 23:39 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #12 from Matt Hargett <matt at use dot net> 2013-03-01 23:38:51 UTC ---
Created attachment 29566
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29566
files generated during compilation where false positive happens with save-temps
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug middle-end/55644] maybe-uninitialized false positive due to incorrect flow analysis when gotos are present
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (11 preceding siblings ...)
2013-03-01 23:39 ` [Bug middle-end/55644] maybe-uninitialized false positive due to incorrect flow analysis when gotos are present matt at use dot net
@ 2013-03-04 5:52 ` d.g.gorbachev at gmail dot com
2021-04-12 20:12 ` msebor at gcc dot gnu.org
13 siblings, 0 replies; 15+ messages in thread
From: d.g.gorbachev at gmail dot com @ 2013-03-04 5:52 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
--- Comment #13 from Dmitry Gorbachev <d.g.gorbachev at gmail dot com> 2013-03-04 05:50:44 UTC ---
(In reply to comment #6)
> I start to believe we should arrange for --disable-werror for any non-standard
> build config ... testing matrix is simply too large and mostly false positives
> pop up.
Just `-Wno-error=maybe-uninitialized'. `--disable-werror' can hide real bugs.
^ permalink raw reply [flat|nested] 15+ messages in thread
* [Bug middle-end/55644] maybe-uninitialized false positive due to incorrect flow analysis when gotos are present
2012-12-10 22:09 [Bug bootstrap/55644] New: profiledbootstrap fails on current trunk matt at use dot net
` (12 preceding siblings ...)
2013-03-04 5:52 ` d.g.gorbachev at gmail dot com
@ 2021-04-12 20:12 ` msebor at gcc dot gnu.org
13 siblings, 0 replies; 15+ messages in thread
From: msebor at gcc dot gnu.org @ 2021-04-12 20:12 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55644
Martin Sebor <msebor at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Blocks| |24639
CC| |msebor at gcc dot gnu.org
Resolution|--- |WORKSFORME
Status|NEW |RESOLVED
Keywords| |diagnostic
--- Comment #14 from Martin Sebor <msebor at gcc dot gnu.org> ---
Per comment 10 resolving as WORKSFORSOME (for lack of a better status).
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=24639
[Bug 24639] [meta-bug] bug to track all Wuninitialized issues
^ permalink raw reply [flat|nested] 15+ messages in thread