From aaea7495957f5b82fe4e1c8a90a8d96cd77c0001 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 1 Jul 2013 16:43:19 -0700 Subject: Merge from gnulib. This incorporates: 2013-06-23 ignore-value: port to gcc -pedantic 2013-06-21 extern-inline: port to gcc -std=c89 --- ChangeLog | 4 ++++ lib/ignore-value.h | 13 +++++++------ m4/extern-inline.m4 | 3 ++- 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 301e912f4d..7610b19290 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2013-06-30 Paul Eggert + Merge from gnulib, incorporating: + 2013-06-23 ignore-value: port to gcc -pedantic + 2013-06-21 extern-inline: port to gcc -std=c89 + Do not use GTK 3 if it exists but cannot be compiled. * configure.ac: Leave GTK_OBJ and term_header alone if GTK 3 exists but cannot be compiled. diff --git a/lib/ignore-value.h b/lib/ignore-value.h index 63ecde8513..ebd6bf42f5 100644 --- a/lib/ignore-value.h +++ b/lib/ignore-value.h @@ -33,15 +33,16 @@ declared with attribute warn_unused_result". */ #ifndef _GL_IGNORE_VALUE_H -# define _GL_IGNORE_VALUE_H +#define _GL_IGNORE_VALUE_H /* The __attribute__((__warn_unused_result__)) feature is available in gcc versions 3.4 and newer, while the typeof feature has been available since 2.7 at least. */ -# if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4) -# define ignore_value(x) ((void) (x)) -# else -# define ignore_value(x) (({ __typeof__ (x) __x = (x); (void) __x; })) -# endif +#if 3 < __GNUC__ + (4 <= __GNUC_MINOR__) +# define ignore_value(x) \ + (__extension__ ({ __typeof__ (x) __x = (x); (void) __x; })) +#else +# define ignore_value(x) ((void) (x)) +#endif #endif diff --git a/m4/extern-inline.m4 b/m4/extern-inline.m4 index 4e801e31f4..c4c5e7f221 100644 --- a/m4/extern-inline.m4 +++ b/m4/extern-inline.m4 @@ -31,7 +31,8 @@ AC_DEFUN([gl_EXTERN_INLINE], && !defined __APPLE__) # define _GL_INLINE inline # define _GL_EXTERN_INLINE extern inline -#elif 2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __APPLE__ +#elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \ + && !defined __APPLE__) # if __GNUC_GNU_INLINE__ /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */ # define _GL_INLINE extern inline __attribute__ ((__gnu_inline__)) -- cgit v1.2.3