Merge branch 'fix-c4141' into 'main'

gstring.h/gmacros.h: Avoid compiler warnings on Visual Studio

Closes #2905

See merge request GNOME/glib!3285
This commit is contained in:
Philip Withnall 2023-02-22 03:30:41 +00:00
commit d8c913ac83
2 changed files with 16 additions and 6 deletions

View File

@ -1157,7 +1157,7 @@
# endif
#elif defined (_MSC_VER)
/* Use MSVC specific syntax. */
# if G_CXX_STD_CHECK_VERSION (11) && _MSC_VER >= 1927
# if G_CXX_STD_CHECK_VERSION (20) && _MSC_VER >= 1927
# define G_ALWAYS_INLINE [[msvc::forceinline]]
# else
# define G_ALWAYS_INLINE __forceinline
@ -1202,7 +1202,7 @@
# if defined (__GNUC__)
# define G_NO_INLINE [[gnu::noinline]]
# elif defined (_MSC_VER)
# if _MSC_VER >= 1927
# if G_CXX_STD_CHECK_VERSION (20) && _MSC_VER >= 1927
# define G_NO_INLINE [[msvc::noinline]]
# else
# define G_NO_INLINE __declspec (noinline)
@ -1214,7 +1214,7 @@
#elif defined (_MSC_VER) && (1200 <= _MSC_VER)
/* Use MSVC specific syntax. */
/* Use ISO C++11 syntax when the compiler supports it. */
# if G_CXX_STD_CHECK_VERSION (11) && _MSC_VER >= 1927
# if G_CXX_STD_CHECK_VERSION (20) && _MSC_VER >= 1927
# define G_NO_INLINE [[msvc::noinline]]
# else
# define G_NO_INLINE __declspec (noinline)

View File

@ -179,9 +179,15 @@ GString* g_string_append_uri_escaped (GString *string,
const gchar *reserved_chars_allowed,
gboolean allow_utf8);
#ifdef G_CAN_INLINE
#if defined (_MSC_VER) && !defined (__clang__)
#pragma warning (push)
#pragma warning (disable : 4141) /* silence "warning C4141: 'inline' used more than once" */
#endif
#ifndef __GTK_DOC_IGNORE__
#ifdef G_CAN_INLINE
G_ALWAYS_INLINE
static inline GString*
g_string_append_c_inline (GString *gstring,
@ -267,10 +273,14 @@ g_string_truncate_inline (GString *gstring,
#endif /* G_GNUC_CHECK_VERSION (2, 0) */
#endif /* G_CAN_INLINE */
#endif /* __GTK_DOC_IGNORE__ */
#if defined (_MSC_VER) && !defined (__clang__)
#pragma warning (pop) /* #pragma warning (disable : 4141) */
#endif
#endif /* G_CAN_INLINE */
GLIB_DEPRECATED
GString *g_string_down (GString *string);
GLIB_DEPRECATED