libosmocore
0.9.3
Osmocom core library
|
00001 #pragma once 00002 00019 #if defined __GNUC__ && defined __GNUC_MINOR__ 00020 # define OSMO_GNUC_PREREQ(maj, min) \ 00021 ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) 00022 #else 00023 # define OSMO_GNUC_PREREQ(maj, min) 0 00024 #endif 00025 00028 #if defined(__clang__) 00029 # define _OSMO_HAS_ATTRIBUTE_DEPRECATED __has_attribute(deprecated) 00030 # define _OSMO_HAS_ATTRIBUTE_DEPRECATED_WITH_MESSAGE __has_extension(attribute_deprecated_with_message) 00031 #elif defined(__GNUC__) 00032 # define _OSMO_HAS_ATTRIBUTE_DEPRECATED 1 00033 # define _OSMO_HAS_ATTRIBUTE_DEPRECATED_WITH_MESSAGE OSMO_GNUC_PREREQ(4,5) 00034 #endif 00035 00036 #if _OSMO_HAS_ATTRIBUTE_DEPRECATED_WITH_MESSAGE 00037 # define OSMO_DEPRECATED(text) __attribute__((__deprecated__(text))) 00038 #elif _OSMO_HAS_ATTRIBUTE_DEPRECATED 00039 # define OSMO_DEPRECATED(text) __attribute__((__deprecated__)) 00040 #else 00041 # define OSMO_DEPRECATED(text) 00042 #endif 00043 00044 #undef _OSMO_HAS_ATTRIBUTE_DEPRECATED_WITH_MESSAGE 00045 #undef _OSMO_HAS_ATTRIBUTE_DEPRECATED 00046