Where are std::sinf( float ) etc.
Howard Hinnant
hhinnant@apple.com
Thu Dec 29 20:41:00 GMT 2005
Many pardons if my inquiry ruffled any feathers. That was not my
intent.
On Dec 29, 2005, at 3:05 PM, Gabriel Dos Reis wrote:
> In this specific case, it appears to me that you're operating under
> the (mistaken) assumption that we selectively merged the C99 math part
> of TR1 into the libstdc++. The C99 math stuff particularly hit
> libstdc++ long before TR1 was initiated or completed (have to dig to
> see the exact dates).
The first C99 compatibility paper to appear before the LWG is dated
March 2002. The first TR1 draft was published in Oct. '03. The
technology to disambiguate the math functions using "restricted
templates" didn't exist prior to early 2002. I personally argued in
committee that we include the "fortran overloading rules" as part of
the C99 compatibility package in the 2003 time frame.
> Don't judge old facts based on new legislations.
> (retroactive laws are harmful :-)
Given the emergence of the enabling technology, the C99 compatibility
proposals on the committee, the initiation of TR1, and the appearance
of this work in gcc all happened close to the same time frame, I did
not suspect they were completely unrelated. My bad.
> As to overloads for std::cosf (note the suffix), I find the
> justificaton for them as "C99 compatibility" as dubious.
Interesting.
-Howard
More information about the Libstdc++
mailing list