[patch,complex] Replace hard-coded constants

Eric Blake eblake@redhat.com
Thu Dec 2 19:36:00 GMT 2010

On 11/29/2010 08:32 AM, Howland Craig D (Craig) wrote:
> http://www.opengroup.org/onlinepubs/9699919799/functions/tan.html
>>> So why is that missing in the descriptions of the complex
>>> functions?
> Annex G of the C standard (ISO/IEC 9899), "IEC 60559-compatible complex
> arithmetic," does specify return values for exceptional conditions.
> Since Newlib nominally generally does support 60559 (better known as
> IEEE 754), these are a good way to go.  And they are not vague.  (I
> don't know why POSIX does not take a moment to mention them,  but given
> their deferral to the C standard, POSIX implicitly requires them when
> 60559 is used.)

POSIX uses <MX> shading for constructs required by Annex G of the C
standard, and <MXX> shading for additional constructs required by POSIX
but not by C Annex G if IEC 60559 is in effect.  Compliance with IEC
60559 is not required for POSIX compliance (that is, complying with
<MX>/<MXX> shading is an optional implementation choice), but is a good
idea to shoot for, especially for non-embedded uses of newlib.

If you have concrete examples of something that should be in POSIX but
is currently missing, it would be a good idea to raise that as a defect
in the POSIX standard to get that situation corrected.  Unfortunately, I
haven't been following this thread closely enough myself to take on the

Eric Blake   eblake@redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 619 bytes
Desc: OpenPGP digital signature
URL: <http://sourceware.org/pipermail/newlib/attachments/20101202/161aae37/attachment.sig>

More information about the Newlib mailing list