http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50880
--- Comment #6 from Paolo Carlini <paolo.carlini at oracle dot com> 2011-10-28 09:10:09 UTC --- Indeed you are right about the sign, in terms at least of consistency with the rest of the fallback implementations which already have got quite a number of comparisons with zero with no special attention to its signedness (like '< _Tp()' or '> _Tp()'). I had already noticed that. As soon as I find a bit of time, we can also *consistently over all those cases* use __builtin_signbit, as suggested by Gaby elsewhere. I have to double check with the middle-end people that it doesn't generate library calls for the patch to be neat.