Where is C++'s math.h's double abs(double)?

Steven King sxking@uswest.net
Mon Apr 2 18:24:00 GMT 2001


On Monday 02 April 2001  5:19, Gabriel Dos Reis wrote:

> Now you refer to the the normative text to see which names of name.h
> is placed in std:: by cname.
>
> 26.5/2
>
>    The contents of these headers [<cmath> and <cstdlib>] are the same
>    as the Standard C library headers <math.h> and <stdlib.h>, with the
>    following additions:
>
>    [...]
>
> (The note in bracket in my addition.)  Tha pretty much makes it
> crystal clear that <xxx.h> contains *less* than <cxxx>.

  Errr, no.  If I'm following you correctly you are saying the C headers 
defined in Annex D are the Standard C library headers refered to above, but 
that isnt how I read the standard; given:

17.4.4.1/3
"Header inclusion is limited as follows:   The C headers ( .h form, described 
in Annex D, D.5) shall include only their corresponding C++ header, as 
described above (17.4.1.2)."

I read that as meaning the C headers are distinct from the C library headers 
used as a basis for the cname headers, and thus <xxx.h> contains all of 
<cxxx>, including the the additional signatures.



More information about the Libstdc++ mailing list