Where are std::sinf( float ) etc.

Gabriel Dos Reis gdr@integrable-solutions.net
Fri Dec 30 00:06:00 GMT 2005


Howard Hinnant <hhinnant@apple.com> writes:

[...]

| I just *knew* my careless copy/paste error was going to cost me
| dearly. :-(

:-)

| float cosf(float);
| 
| which is required by C99.  Having that signature (not any overloads
| of it) in the name of "C99 compatibility" does not seem dubious to
| me.

Indeed.

As I argued earlier, if C++ leaves "C" headers as they are, they would
just work fine; we would not concerne ourselves with fiddling with the
inner details (which does not buy us anything anyway).

On my machine

    #include <math.h>

    int main()
    {
       float (*f)(float) = &cosf;
    }

works fine with g++.

-- Gaby



More information about the Libstdc++ mailing list