This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug bootstrap/53197] [4.8 Regression] bootstrap comparison failure
- From: "matz at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 03 May 2012 00:13:16 +0000
- Subject: [Bug bootstrap/53197] [4.8 Regression] bootstrap comparison failure
- Auto-submitted: auto-generated
- References: <bug-53197-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53197
--- Comment #14 from Michael Matz <matz at gcc dot gnu.org> 2012-05-03 00:13:16 UTC ---
Thanks to Jonathan I have a hunch now. He has BUILD_CONFIG=bootstrap-debug
whereas I have BUILD_CONFIG empty for all my machines.
This means that for him stage2 is built with -g -gtoggle (effectively switching
off -g again), and stage3 with -g, and the compares then do the comparison
ignoring the debug info.
For me stage2 and stage3 are built with -g. The -g switch seems to influence
code generation with my patch (I tested that compiling the stage3 file
on the broken tree with -gtoggle produces the same as the stage2 file),
which of course is a bug. But I haven't seen it because all my files are
built with -g.
Now, as to why for me BUILD_CONFIG isn't bootstrap-debug: configure.ac
activates this by default, but then checks if contrib/compare-debug
actually works for comparing a debug and non-debug .o file. And for
SuSE systems it doesn't, because our system compilers encode some command
line options (among them -g) into a special .comment section.
In any case, this code difference for -g vs. non-g has to be fixed, which
I'm in the process of doing.