long double (was "strtold?")
Jeff Johnston
jjohnstn@redhat.com
Sat Apr 25 00:11:00 GMT 2009
Jeff Johnston wrote:
> Ken Werner wrote:
>> On Monday 20 April 2009 23:15:24 Howland Craig D (Craig) wrote:
>>
>>> Ken said:
>>>
>>>> I played with the AC_TYPE_LONG_DOUBLE_WIDER macro but there are two
>>>> things to consider. We would need to upgrade the autoconf version
>>>> required by newlib and introduce something like config.h (through
>>>> AC_CONFIG_HEADERS). which might pollute the name space if it get's
>>>> pulled by a standard header.
>>>>
>>> Jeff said:
>>>
>>>> I think an executable test is required to accomplish this which
>>>> can't be
>>>> done in newlib due to the missing library at time of configure.
>>>>
>>> Ken's former problem could easily be circumvented by writing our own
>>> test
>>> as he did for HAVE_LONG_DOUBLE, couldn't it? Something like:
>>>
>>> cat >conftest.c <<EOF
>>> #include <float.h>
>>> #if DBL_MANT_DIG == LDBL_MANT_DIG && LDBL_MIN_EXP == DBL_MIN_EXP &&
>>> \
>>> LDBL_MAX_EXP == DBL_MAX_EXP
>>> #define _LDBL_EQ_DBL
>>> #else
>>> #error "LDBL != DBL"
>>> #endif
>>> EOF
>>>
>>> (Of course, the #define is meaningless, but I just copied what we have
>>> already and did a minimal amount of editing. Maybe a declaration would
>>> be needed in case there were any compilers that didn't like to make
>>> empty objects.)
>>>
>>> This is not an executable test that needs the library, as float.h comes
>>> from the compiler. It just takes a compile-only pass/fail. So I think
>>> that it is viable, should we decide on this as the best alternative.
>>>
>>> I don't understand Ken's latter comment about name space pollution.
>>> Could
>>> you elaborate?
>>>
>>
>> This is what I had in mind. Let's assume the generated config.h
>> contains a define without an underscore prefix. If this gets pulled
>> into a standard header we would have defines that are not
>> standardized and thus not expected by the user. That might collide
>> with user defined flags and cause side effects.
>> In case we write the conftest ourselfs and manually generate the
>> header file to be included we can prepend the underscore. However,
>> autoconf isn't my strong point. : )
>>
>>
> This isn't a problem. Autoconf decides what the flag will be named.
> Craig, this makes sense.
> I'll work on a patch shortly.
>
> -- Jeff J.
Patch checked in and tested on mn10300 where _LDBL_EQ_DBL gets sets to 1.
-- Jeff J.
>>> Craig
>>>
>>
>> Ken
>>
>
More information about the Newlib
mailing list