From 03753cda7909983e3b45ba2dd5572835b6bd37d3 Mon Sep 17 00:00:00 2001 From: Alvarito050506 Date: Wed, 11 Aug 2021 19:33:08 -0300 Subject: [PATCH] Better detection of the cleanup attribute. Use g_macro__has_attribute to detect it instead of hardcoding __GNUC__ || __clang__. This adds support for a few compiler and is consistent with the rest of the gmacros.h file. --- docs/reference/glib/glib-sections.txt | 1 + glib/gmacros.h | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/reference/glib/glib-sections.txt b/docs/reference/glib/glib-sections.txt index 35b58cfb0..340e29dfa 100644 --- a/docs/reference/glib/glib-sections.txt +++ b/docs/reference/glib/glib-sections.txt @@ -783,6 +783,7 @@ g_macro__has_attribute_fallthrough g_macro__has_attribute_may_alias g_macro__has_attribute___noinline__ g_macro__has_attribute_warn_unused_result +g_macro__has_attribute_cleanup
diff --git a/glib/gmacros.h b/glib/gmacros.h index 7fc34d59d..d528531f4 100644 --- a/glib/gmacros.h +++ b/glib/gmacros.h @@ -142,6 +142,7 @@ #define g_macro__has_attribute___deprecated__ G_GNUC_CHECK_VERSION (3, 1) #define g_macro__has_attribute_may_alias G_GNUC_CHECK_VERSION (3, 3) #define g_macro__has_attribute_warn_unused_result G_GNUC_CHECK_VERSION (3, 4) +#define g_macro__has_attribute_cleanup G_GNUC_CHECK_VERSION (3, 3) #endif @@ -1187,7 +1188,7 @@ #ifndef __GI_SCANNER__ -#if defined (__GNUC__) || defined (__clang__) +#if g_macro__has_attribute(cleanup) /* these macros are private */ #define _GLIB_AUTOPTR_FUNC_NAME(TypeName) glib_autoptr_cleanup_##TypeName