summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/reference/glib/glib-sections.txt1
-rw-r--r--glib/gmacros.h3
2 files changed, 3 insertions, 1 deletions
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
</SECTION>
<SECTION>
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