Mercurial > hg > octave-shane > gnulib-hg
changeset 17408:c4e1bb6e391b
stdio: port --enable-gcc-warnings to clang
* lib/stdio.in.h (fwrite) [__clang__]: Ignore -Wunused-value entirely,
since the GCC workaround for fwrite does not pacify clang.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Wed, 15 May 2013 00:30:43 -0700 |
parents | b5c1d4b2677e |
children | 26a04e61f560 |
files | ChangeLog lib/stdio.in.h |
diffstat | 2 files changed, 11 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2013-05-15 Paul Eggert <eggert@cs.ucla.edu> + stdio: port --enable-gcc-warnings to clang + * lib/stdio.in.h (fwrite) [__clang__]: Ignore -Wunused-value entirely, + since the GCC workaround for fwrite does not pacify clang. + sig2str: port --enable-gcc-warnings to clang * lib/sig2str.c (sig2str): Avoid warning about unused printf argument.
--- a/lib/stdio.in.h +++ b/lib/stdio.in.h @@ -579,13 +579,16 @@ <http://sources.redhat.com/bugzilla/show_bug.cgi?id=11959>, which sometimes causes an unwanted diagnostic for fwrite calls. This affects only function declaration attributes under certain - versions of gcc, and is not needed for C++. */ + versions of gcc and clang, and is not needed for C++. */ # if (0 < __USE_FORTIFY_LEVEL \ && __GLIBC__ == 2 && 4 <= __GLIBC_MINOR__ && __GLIBC_MINOR__ <= 15 \ - && 3 < __GNUC__ + (4 <= __GNUC_MINOR__) \ && !defined __cplusplus) -# undef fwrite -# define fwrite(a, b, c, d) ({size_t __r = fwrite (a, b, c, d); __r; }) +# ifdef __clang__ +# pragma clang diagnostic ignored "-Wunused-value" +# elif 3 < __GNUC__ + (4 <= __GNUC_MINOR__) +# undef fwrite +# define fwrite(a, b, c, d) ({size_t __r = fwrite (a, b, c, d); __r; }) +# endif # endif # endif _GL_CXXALIASWARN (fwrite);