From f2ad6eb0c579f1c825aa1efec192b4d4eb5e6171 Mon Sep 17 00:00:00 2001 From: Julian Andres Klode Date: Tue, 7 Jan 2020 16:21:31 +0100 Subject: Avoid #define _error, use anonymous C++ struct instead Replace the macro with an anonymous struct that provides an inline operator->() returning the _error pointer. This change is ABI compatible, and the inline macro is not exported. We should consider if we want to avoid the function call and directly export the thread_local variable instead, when we do break ABI. Closes: #948338 --- apt-pkg/contrib/macros.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'apt-pkg/contrib/macros.h') diff --git a/apt-pkg/contrib/macros.h b/apt-pkg/contrib/macros.h index 4d9f780c7..c19cb313d 100644 --- a/apt-pkg/contrib/macros.h +++ b/apt-pkg/contrib/macros.h @@ -79,6 +79,7 @@ #define APT_NORETURN __attribute__((noreturn)) #define APT_PRINTF(n) __attribute__((format(printf, n, n + 1))) #define APT_WEAK __attribute__((weak)); + #define APT_UNUSED __attribute__((unused)) #else #define APT_DEPRECATED #define APT_DEPRECATED_MSG @@ -87,6 +88,7 @@ #define APT_NORETURN #define APT_PRINTF(n) #define APT_WEAK + #define APT_UNUSED #endif #if APT_GCC_VERSION > 0x0302 -- cgit v1.2.3