aboutsummaryrefslogtreecommitdiff
path: root/include/armnn/Deprecated.hpp
blob: 73871772bc0bdeed4abcb6becc06ee05534e4485 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
//
// Copyright © 2017 Arm Ltd. All rights reserved.
// SPDX-License-Identifier: MIT
//

#pragma once

#if __GNUC__
#   define ARMNN_NO_DEPRECATE_WARN_BEGIN \
    _Pragma("GCC diagnostic push")  \
    _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")

#   define ARMNN_NO_DEPRECATE_WARN_END \
    _Pragma("GCC diagnostic pop")

#elif __clang__
#   define ARMNN_NO_DEPRECATE_WARN_BEGIN \
    _Pragma("clang diagnostic push")  \
    _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"")

#   define ARMNN_NO_DEPRECATE_WARN_END \
    _Pragma("clang diagnostic pop")

#elif defined (_MSC_VER)
#   define ARMNN_NO_DEPRECATE_WARN_BEGIN \
    __pragma(warning( push )) \
    __pragma(warning(disable : 4996))

#   define ARMNN_NO_DEPRECATE_WARN_END \
    __pragma(warning( pop ))

#else
#   define ARMNN_NO_DEPRECATE_WARN_BEGIN
#   define ARMNN_NO_DEPRECATE_WARN_END
#endif

#define ARMNN_SUPRESS_DEPRECATE_WARNING(func) \
ARMNN_NO_DEPRECATE_WARN_BEGIN \
func; \
ARMNN_NO_DEPRECATE_WARN_END

#define ARMNN_DEPRECATED [[deprecated]]
#define ARMNN_DEPRECATED_MSG(message) [[deprecated(message)]]

#if defined(__GNUC__) && (__GNUC__ <= 6)
#   define ARMNN_DEPRECATED_ENUM
#   define ARMNN_DEPRECATED_ENUM_MSG(message)
#else
#   define ARMNN_DEPRECATED_ENUM ARMNN_DEPRECATED
#   define ARMNN_DEPRECATED_ENUM_MSG(message) ARMNN_DEPRECATED_MSG(message)
#endif