https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67256
--- Comment #3 from MichaĆ Fita <michal.fita at gmail dot com> --- Contrary to my expectations #include <cmath> doesn't work either. I would expect these not declared in global if standard says unspecified, as my logic whisper that would be more C++ way. I understand then I shouldn't expect to get this fixed as removing these symbols from global scope would break existing code? Interesting thing about declaration in mathcalls.h is that they're surrounded by _Mdouble_BEGIN_NAMESPACE and _Mdouble_END_NAMESPACE macros, which seem empty when included from cmath (to my surprise that one redefines all functions in std on top of what is in math.h). Whether these are empty or not the presence of _GLIBCPP_USE_NAMESPACES decides. Now I see it has been mindfully done with purpose: - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=6257 - http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-defects.html#456 Another point to the C++ list on the side "hate".
