I need the semantics of the [[nodiscard]] attribute in a non-C++17 codebase. I guess there are compiler dependent ways of achieving this before C++17. Does anyone know these? I am interested in the ones for clang,gcc, and MSVC.
[[nodiscard]]
__attribute__((warn_unused_result))
_Check_return_
_MSC_VER >= 1700
__attribute__((warn_unused_result))
_Check_return_
for_MSC_VER >= 1700
(Visual Studio 2012)