PcapPlusPlus  Next
DeprecationUtils.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 #ifndef PCPP_DEPRECATED
6 # define PCPP_DEPRECATED(msg) [[deprecated(msg)]]
7 #endif
8 
9 #if !defined(DISABLE_WARNING_PUSH) || !defined(DISABLE_WARNING_POP)
10 # if defined(_MSC_VER)
11 # define DISABLE_WARNING_PUSH __pragma(warning(push))
12 # define DISABLE_WARNING_POP __pragma(warning(pop))
13 # define DISABLE_WARNING(warningNumber) __pragma(warning(disable : warningNumber))
14 
15 # define DISABLE_WARNING_DEPRECATED DISABLE_WARNING(4996)
16 # elif defined(__GNUC__) || defined(__clang__)
17 # define DO_PRAGMA(X) _Pragma(#X)
18 # define DISABLE_WARNING_PUSH DO_PRAGMA(GCC diagnostic push)
19 # define DISABLE_WARNING_POP DO_PRAGMA(GCC diagnostic pop)
20 # define DISABLE_WARNING(warningName) DO_PRAGMA(GCC diagnostic ignored #warningName)
21 
22 // clang-format off
23 # define DISABLE_WARNING_DEPRECATED DISABLE_WARNING(-Wdeprecated-declarations)
24 // clang-format on
25 # else
26 # pragma message("WARNING: Disabling of warnings is not implemented for this compiler")
27 # define DISABLE_WARNING_PUSH
28 # define DISABLE_WARNING_POP
29 
30 # define DISABLE_WARNING_DEPRECATED
31 # endif
32 #endif