Created attachment 24370 [details] preprocessed file x86_64-apple-darwin10 fails to bootstrap at revision 174286 with: ... libtool: compile: /opt/gcc/build_w/./gcc/xgcc -B/opt/gcc/build_w/./gcc/ -B/opt/gcc/gcc4.7w/x86_64-apple-darwin10.7.0/bin/ -B/opt/gcc/gcc4.7w/x86_64-apple-darwin10.7.0/lib/ -isystem /opt/gcc/gcc4.7w/x86_64-apple-darwin10.7.0/include -isystem /opt/gcc/gcc4.7w/x86_64-apple-darwin10.7.0/sys-include -DHAVE_CONFIG_H -I. -I../../../work/libgfortran -iquote../../../work/libgfortran/io -I../../../work/libgfortran/../gcc -I../../../work/libgfortran/../gcc/config -I../../../work/libgfortran/../libquadmath -I../.././gcc -std=gnu99 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -fcx-fortran-rules -ffunction-sections -fdata-sections -g -O2 -MT fmain.lo -MD -MP -MF .deps/fmain.Tpo -c ../../../work/libgfortran/fmain.c -fno-common -DPIC -o .libs/fmain.o In file included from ../../../work/libgfortran/libgfortran.h:53:0, from ../../../work/libgfortran/fmain.c:4: ../../../work/libgfortran/../libquadmath/quadmath_weak.h:39:1: internal compiler error: tree check: expected tree that contains 'common' structure, have 'identifier_node' in assemble_alias, at varasm.c:5789 Configured with: ../work/configure --prefix=/opt/gcc/gcc4.7w --enable-languages=c,c++,fortran,objc,obj-c++,java,lto --with-gmp=/opt/sw64 --with-libiconv-prefix=/opt/sw64 --with-system-zlib --with-cloog=/opt/sw64 --enable-cloog-backend=isl --enable-lto I attach the preprocessed file produced with /opt/gcc/build_w/gcc/xgcc -B/opt/gcc/build_w/gcc/ -DHAVE_CONFIG_H -I. -I../../../work/libgfortran -iquote../../../work/libgfortran/io -I../../../work/gcc -I../../../work/gcc/config -I../../../work/libquadmath -I../../gcc -c ../../../work/libgfortran/fmain.c -save-temps which yields [macbook] x86_64-apple-darwin10.7.0/libgfortran% /opt/gcc/build_w/gcc/cc1 fmain.i __sputc __inline_isinff __inline_isinfd __inline_isinf __inline_isfinitef __inline_isfinited __inline_isfinite __inline_isnanf __inline_isnand __inline_isnan __inline_signbitf __inline_signbitd __inline_signbit __inline_isnormalf __inline_isnormald __inline_isnormal _OSSwapInt16 _OSSwapInt32 _OSSwapInt64 cimagq crealq conjq In file included from ../../../work/libgfortran/libgfortran.h:53:0, from ../../../work/libgfortran/fmain.c:4: ../../../work/libquadmath/quadmath_weak.h:39:1: internal compiler error: tree check: expected tree that contains 'common' structure, have 'identifier_node' in assemble_alias, at varasm.c:5789 Revision 174285 is OK (its cc1 compiles fmain.i without any error). Note that I have bootstrapped revision 174295 with Configured with: ../p_work/configure --prefix=/opt/gcc/gcc4.7p --enable-languages=c,c++,lto,fortran --with-gmp=/opt/sw64 --with-libiconv-prefix=/opt/sw64 --with-system-zlib --enable-checking=release --with-cloog=/opt/sw64 --enable-cloog-backend=isl --enable-lto
Same problem on Solaris 11/SPARC.
I have bootstrapped revision 174339 after reverting revision 174286.
Ugh. I do not have time to deal with this problem at the moment. But I don't understand how ASM_OUTPUT_WEAKREF isn't defined at that point. We have a perfectly fine default definition in defaults.h.
(In reply to comment #3) > Ugh. I do not have time to deal with this problem at the moment. > > But I don't understand how ASM_OUTPUT_WEAKREF isn't defined at that point. We > have a perfectly fine default definition in defaults.h. Perhaps because x86_64-apple-darwin has... [MacPro:gcc47-4.7.0-1000/darwin_objdir/gcc] root# grep HAVE_GAS_WEAKREF * auto-host.h:/* #undef HAVE_GAS_WEAKREF */ whereas linux has... auto-host.h:#define HAVE_GAS_WEAKREF 1
That's what I get for not actually *looking* at the definition. The only quick non-reverting way I see of fixing this is to use TREE_TYPE instead of TREE_CHAIN...which is gross. CC'ing Honza to see if he has good ideas.
PR49208 is likely a duplicate of this PR.
*** Bug 49208 has been marked as a duplicate of this bug. ***
This also caused all the ICE on regress (ppc-darwin9, see http://gcc.gnu.org/ml/gcc-testresults/2011-05/msg03217.html ).
This also kills the bootstrap on amd64-unknown-freebsd8.2 (though not i386-...): In file included from ../.././gcc/gthr-default.h:1:0, from /scratch/tmp/gerald/gcc-HEAD/libgcc/../gcc/gthr.h:160, from /scratch/tmp/gerald/gcc-HEAD/libgcc/../gcc/unwind-dw2.c:37 : /scratch/tmp/gerald/gcc-HEAD/libgcc/../gcc/gthr-posix.h:118:1: internal compiler error: tree check: expected tree that contains 'common' structure, have 'identi fier_node' in assemble_alias, at varasm.c:5789 Might be best to revert the patch for now?
> Might be best to revert the patch for now? Especially in the light of comment #3: > Ugh. I do not have time to deal with this problem at the moment. Anyway I did not wait and I have done it on my platforms (x86_64-apple-darwin10 and powerpc-apple-darwin9).
It is strange that regress is still able to bootstrap powerpc-apple-darwin9 with r174286 present. The powerpc-apple-darwin9 target also has... auto-host.h:/* #undef HAVE_GAS_WEAKREF */ but it doesn't seem to trigger the same bootstrap issues as on intel darwin.
> It is strange that regress is still able to bootstrap powerpc-apple-darwin9 > with r174286 present. The powerpc-apple-darwin9 target also has... > > auto-host.h:/* #undef HAVE_GAS_WEAKREF */ > > but it doesn't seem to trigger the same bootstrap issues as on intel darwin. From the audit trail, bootstrap fails on several platforms (four so far) after r174286 (I have changes the summary accordingly), but in different places. I also as able to bootstrap my G5 without reverting r174286, however I have seen the new failures shown in the regress reports. These failures disappeared after having a new bootstrap with r174286 reverted.
Also seen on i686-apple-darwin9.
Author: froydnj Date: Mon May 30 16:42:05 2011 New Revision: 174445 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=174445 Log: fix PR bootstrap/4910 gcc/ PR bootstrap/49190 Revert: 2011-05-26 Nathan Froyd <froydnj@codesourcery.com> * tree.h (struct tree_identifier): Inherit from tree_typed, not tree_common. (HT_IDENT_TO_GCC_IDENT): Adjust for said change. * tree.c (initialize_tree_contains_struct): Mark TS_IDENTIFIER as TS_BASE instead of TS_COMMON. * varasm.c (assemble_name): Remove assert. gcc/c-family/ PR bootstrap/49190 Revert: 2011-05-26 Nathan Froyd <froydnj@codesourcery.com> * c-common.h (struct c_common_identifier): Inherit from tree_typed, not tree_common. Modified: trunk/gcc/ChangeLog trunk/gcc/c-family/ChangeLog trunk/gcc/c-family/c-common.h trunk/gcc/tree.c trunk/gcc/tree.h trunk/gcc/varasm.c
I've reverted the offending commit. If somebody could confirm that the failures are gone, this PR can be closed.
At r174446, lto profiled bootstrap works fine on x86_64 darwin.
x86_64-unknown-freebsd8.2 is back in bootstrap land again.
Bootstrap restored on i686-apple-darwin9. Dave
> I've reverted the offending commit. If somebody could confirm that the > failures are gone, this PR can be closed. Regress is back to "normal". Closing as fixed.