configure tests for the __builtin_math functions

Branko Branko
Tue May 23 22:46:00 GMT 2000


Steven King wrote:
> 
>   The configure checks for the __builtin_math functions are non-functional.
> They do an AC_TRY_COMPILE with AC_LANG_C which will not fail for undefined
> functions and thus the tests always succeed.  But this doesnt matter as they
> define _GLIBCPP_* for success and the header files are checking for GLIBCPP (no
> leading underscore) so the __builtins are being not used.  However, there is a
> comment in the Changelog from last year saying the builtins are disabled
> because of problems on Solaris so I am not sure if all this is by design.

There ceartainly _is_ a problem on Solaris, although I haven't
tracked it down yet. I'm working on getting wchar_t supported
on sparc-sun-solaris2.6, and I've got to the stage where I can
build the library and it's (mostly) usable when linked statically,
but most of the testcases fail with:

./src/.libs/libstdc++.so: undefined reference to `sqrtf'
./src/.libs/libstdc++.so: undefined reference to `wmemcpy'
./src/.libs/libstdc++.so: undefined reference to `cosf'
./src/.libs/libstdc++.so: undefined reference to `wmemchr'
./src/.libs/libstdc++.so: undefined reference to `wmemset'
./src/.libs/libstdc++.so: undefined reference to `sinf'
./src/.libs/libstdc++.so: undefined reference to `wmemcmp'
./src/.libs/libstdc++.so: undefined reference to `wmemmove'

even though configure finds built-in sqrtf, cosf and sinf.


On another note, what's the point in using the wmem* functions?
In what way are they different from the mem* equivalents?

    Brane

-- 
Branko Čibej                 <branko.cibej@hermes.si>
HERMES SoftLab, Litijska 51, 1000 Ljubljana, Slovenia
voice: (+386 1) 586 53 49     fax: (+386 1) 586 52 70


More information about the Libstdc++ mailing list