[Patch,fortran] PR 27740 Symbol versioning for libgfortran

Steve Kargl sgk@troutmask.apl.washington.edu
Tue Nov 7 02:06:00 GMT 2006


On Mon, Nov 06, 2006 at 05:41:52PM -0800, Steve Kargl wrote:
> On Mon, Nov 06, 2006 at 03:06:22PM -0800, Steve Kargl wrote:
> > On Mon, Nov 06, 2006 at 10:53:10PM +0200, Janne Blomqvist wrote:
> > > 
> > > Perhaps that's the solution to Steve's problem with csqrtf as well (if 
> > > the problem indeed persists after bootstrapping with my version of the 
> > > patch). If libgfortran needs to provide C99 math functions on platforms 
> > > that don't have a C99 libc, then the current patch won't work as the 
> > > current gfortran.map hides all the symbols not explicitly mentioned there.
> > > 
> > 
> > I've been in meetings most of the day and haven't tried a
> > new bootstrap.  But, if your patch is hiding symbols in 
> > c99_functions.c, it will cause problems.
> > 
> 
> Janne,
> 
> With your patch and enable-maintainer-mode, I see multiple failures.
> These are all due to undefined references to the following symbols
> `csqrtf', `csqrt', `_gfortran_pow_i16_i16', `cosl', and `cpowf' on
> amd64-*-freebsd.  I believe FX alerted you to the problem with
> _gfortran_pow_i16_i16 missing in the gfortran.map.  csqrtf, csqrt,
> and `cpowf' are defined in c99_functions.c.  I have no idea why
> I'm picking up cosl, which is not in my libm. 
> 

I must be completely nuts, but I have a phantom testcase :-/

Executing on host: /usr/home/sgk/gcc/obj4x/gcc/testsuite/gfortran/../../gfortran
 -B/usr/home/sgk/gcc/obj4x/gcc/testsuite/gfortran/../../ real91800.f90   -L/usr/
home/sgk/gcc/obj4x/x86_64-unknown-freebsd7.0/./libgfortran/.libs -L/usr/home/sgk
/gcc/obj4x/x86_64-unknown-freebsd7.0/./libgfortran/.libs -L/usr/home/sgk/gcc/obj
4x/x86_64-unknown-freebsd7.0/./libiberty  -lm   -o real91800.x    (timeout = 300
)
/tmp/ccKtPxrw.o(.text+0x2c): In function `MAIN__':
: undefined reference to `cosl'
collect2: ld returned 1 exit status
compiler exited with status 1
output is:
/tmp/ccKtPxrw.o(.text+0x2c): In function `MAIN__':
: undefined reference to `cosl'
collect2: ld returned 1 exit status

-- 
Steve



More information about the Gcc-patches mailing list