------- Comment #6 from ro at techfak dot uni-bielefeld dot de 2009-10-22 17:09 ------- Subject: Re: Bootstrap with Sun Studio 12.1 fails
> ------- Comment #5 from ghazi at gcc dot gnu dot org 2009-10-21 19:51 ------- > (In reply to comment #3) > > > (Also, you don't mention what version of gmp you were using.) > > Right, sorry: I've tried this with the latest version, gmp 4.3.1. > > Okay I checked gmp source tarballs, and it looks like the SUNPRO clauses > defining __GMP_EXTERN_INLINE were added specifically in gmp-4.3.1. I don't > see > them in gmp-4.2.4 or gmp-4.3.0. Could you please verify bootstrapping gcc > with > those two versions of gmp plus Sun's cc to see if they work? If it does we > should offer it as a workaround for users until we figure out how we want to > solve this long-term. I've only tried with gmp 4.3.0, but this works on i386-pc-solaris2.10. So for the moment, we have a workaround. > Recommending other versions of gmp as a workaround is helpful even if we hack > up a patch to GCC, because gcc-4.3 and 4.4 will not see these "fixes" until > some months in the future when we do another release. Alternatively we may > end > up recommending to the gmp maintainer(s) that they fix the problem in their > package since that's what's really broken IMHO. Either way, it would be > helpful to know whether using other versions of gmp would help. I'm not sure we can claim there is GMP breakage at all: they could argue that anyone including <gmp.h> can be expected to link with -lgmp as well. I just don't know if it is correct to assume that a function defined as extern inline in a header will not be emitted in the object file. Even so, there is breakage in GCC as well: * ansidecl.h has a broken test for C99, and incorrectly assumes Sun cc doesn't support extern inline. The define from inline to nothing causes part of the problem. * Three files in the gcc directory declared extern inline call static functions, which causes Sun Studio cc to error out (cf. the attached diff). Rainer -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41771