std::unary_function is still present in C++17

Fredrik Hellman
Mon Nov 11 10:20:00 GMT 2019


I am surprised to see that std::unary_function is still defined when
including "functional" and compiling for C++17. It appears to be defined in
bits/stl_function.h where it is defined regardless of C++ version.

This gives me a bit of portability problems, since I get no indication from
the library that it is removed and might not compile on other platforms.
For instance, the class has been removed in MSVC.

Is there some way for me to keep the compiler/library to stick more
pedantically to the standard?

Best regards,
Fredrik Hellman

More information about the Libstdc++ mailing list