On 06/10/11 11:37, Bruno Haible wrote:
> Hi,
> 
> Markus Duft wrote:
>> long long double is broken.
> 
> You surely mean "long double"? There is no such type as "long long double"
> in C.

right; long long double is too long :)

> 
>> this bites me in the gnulib vasnprintf implementation, which calls snprintf
>> from libc which immediately crashes ... :(  
> 
> gnulib and coreutils code now assume that the 'long double' type exists
> and basically works at the compiler level (variable assignment, parameter
> passing, return value).
> 
> Setting gt_cv_c_long_double=no therefore has no effect any more.

darn, i really hope it's "just" the libc thats broken...

> 
> You need to find out what is wrong about that type on your platform. If
> you're lucky, it's only some library functions (like snprintf) which don't
> support it.
> 
> Your best starting point should be to create a gnulib testdir
>   $ ./gnulib-tool --create-testdir --dir=/tmp/testdir --with-tests \
>     acosl asinl atanl ceill cosl c-strtold expl float floorl fpucw frexpl \
>     frexpl-nolibm ftoastr human isfinite isinf isnanl isnanl-nolibm ldexpl \
>     ldtoastr logl math printf-frexpl roundl signbit sinl sqrtl tanl truncl \
>     vasnprintf
> and test that package on your platform. From the list of tests that fail,
> you should be able to investigate the precise problems with 'long double'.

thanks, will do so!

markus

> 
> Bruno


Reply via email to