IDS peak genericC++ v1.12.0
Loading...
Searching...
No Matches
peak_common_defines.hpp
Go to the documentation of this file.
1
10
11#pragma once
12
13// clang-format off
14#if __cplusplus >= 201703L || _MSVC_LANG >= 201703L
15// clang-format on
24# define PEAK_COMMON_NO_DISCARD [[nodiscard]]
25
34# define PEAK_COMMON_MAYBE_UNUSED [[maybe_unused]]
35#else
36
37# ifdef _MSC_VER
38
47# define PEAK_COMMON_NO_DISCARD _Check_return_
48
57# define PEAK_COMMON_MAYBE_UNUSED
58
59# elif defined(__clang__) || defined(__GNUC__) || defined(__GNUG__)
60
69# define PEAK_COMMON_NO_DISCARD __attribute__((warn_unused_result))
70
79# define PEAK_COMMON_MAYBE_UNUSED __attribute__((unused))
80
81# else
82
91# define PEAK_COMMON_NO_DISCARD
92
101# define PEAK_COMMON_MAYBE_UNUSED
102
103# endif
104#endif