On Tue, 13 Mar 2007, Mark Mitchell wrote: > The GCC 4.2.0 RC1 build has failed (on x86_64-unknown-linux-gnu) with: > > Comparing stages 2 and 3 > Bootstrap comparison failure! > ./java/parse.o differs > ./java/parse-scan.o differs
This is caused by --enable-generated-files-in-srcdir, as used by the release script, hence not being seen by people configuring normally without that option. The first time Java is built (stage 2), the file java/parse.c is generated in the build directory and compiled from the build directory; only some time after parse.o is built does parse.c get copied to the source directory. The second time (stage 3) it's built from the source directory because of the VPATH setting. Building from different paths means different debug info. This didn't apply with 4.1 because then, without toplevel bootstrap, all files to be copied to the source directory were generated and copied in stage 1, so stage 2 and stage 3 both built them from the source directory. Now, stage 1 is not only built as C only but the whole stage 1 build directory is configured as C only, and so Java generated files don't get copied until stage 2. I have no suggested solution, other than ceasing to include files generated with bison, flex and makeinfo in releases for 4.2 and later. (The GNU Coding Standards describe such generated files with "We commonly include" rather than with a requirement to include them.) I've found another issue that can cause comparison failures in some circumstances; I'll file a PR for that. -- Joseph S. Myers [EMAIL PROTECTED]