mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-11-02 15:46:17 +01:00
Cope with gcc 4.3 changed 'extern inline' semantics. (#315437, patch by
2008-01-06 Matthias Clasen <mclasen@redhat.com> * glib/gutils.h: Cope with gcc 4.3 changed 'extern inline' semantics. (#315437, patch by Loïc Minier) svn path=/trunk/; revision=6254
This commit is contained in:
parent
6554c8509f
commit
3f15a98f8d
@ -1,3 +1,8 @@
|
||||
2008-01-06 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* glib/gutils.h: Cope with gcc 4.3 changed 'extern inline'
|
||||
semantics. (#315437, patch by Loïc Minier)
|
||||
|
||||
2008-01-06 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* glib/gspawn.c (fdwalk): Don't set open_max to
|
||||
|
@ -69,6 +69,18 @@ G_BEGIN_DECLS
|
||||
# endif /* va_list is a pointer */
|
||||
#endif /* !G_VA_COPY */
|
||||
|
||||
/* need this utility macro, but it's not always present in system headers
|
||||
* copy it from linux features.h for those who need it
|
||||
*/
|
||||
#ifndef __GNUC_PREREQ
|
||||
#if defined __GNUC__ && defined __GNUC_MINOR__
|
||||
# define __GNUC_PREREQ(maj, min) \
|
||||
((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
|
||||
#else
|
||||
# define __GNUC_PREREQ(maj, min) 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* inlining hassle. for compilers that don't allow the `inline' keyword,
|
||||
* mostly because of strict ANSI C compliance or dumbness, we try to fall
|
||||
* back to either `__inline__' or `__inline'.
|
||||
@ -97,7 +109,12 @@ G_BEGIN_DECLS
|
||||
# define G_INLINE_FUNC
|
||||
# undef G_CAN_INLINE
|
||||
#elif defined (__GNUC__)
|
||||
# define G_INLINE_FUNC extern inline
|
||||
# if __GNUC_PREREQ (4,2) && defined (__STDC_VERSION__) \
|
||||
&& __STDC_VERSION__ >= 199901L
|
||||
# define G_INLINE_FUNC extern __inline __attribute__ ((__gnu_inline__))
|
||||
# else
|
||||
# define G_INLINE_FUNC extern __inline
|
||||
# endif
|
||||
#elif defined (G_CAN_INLINE)
|
||||
# define G_INLINE_FUNC static inline
|
||||
#else /* can't inline */
|
||||
|
Loading…
Reference in New Issue
Block a user