From 2c77dff78db5fb5aef6078bb0ccf054bf483b131 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Thu, 16 Oct 2008 23:20:44 +0200 Subject: [PATCH] ignore-value: new module * modules/ignore-value: New file. * lib/ignore-value.h: New file. * MODULES.html.sh (Compiler warning management): New section, just for this module. More to come. --- ChangeLog | 8 ++++++++ MODULES.html.sh | 10 ++++++++++ lib/ignore-value.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ modules/ignore-value | 22 ++++++++++++++++++++++ 4 files changed, 85 insertions(+) create mode 100644 lib/ignore-value.h create mode 100644 modules/ignore-value diff --git a/ChangeLog b/ChangeLog index 5bd88194c..4c2817df6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2008-10-17 Jim Meyering + + ignore-value: new module + * modules/ignore-value: New file. + * lib/ignore-value.h: New file. + * MODULES.html.sh (Compiler warning management): New section, + just for this module. More to come. + 2008-10-16 Paul Eggert open-safer.c: avoid 'signed and unsigned in conditional...' warning diff --git a/MODULES.html.sh b/MODULES.html.sh index 9597f0987..968016363 100755 --- a/MODULES.html.sh +++ b/MODULES.html.sh @@ -1830,6 +1830,16 @@ func_all_modules () func_module crypto/gc-sha1 func_end_table + element="Compiler warning management" + element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"` + func_section_wrap ansic_ext_misc + func_wrap H3 + func_echo "$element" + + func_begin_table + func_module ignore-value + func_end_table + element="Misc" element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"` func_section_wrap ansic_ext_misc diff --git a/lib/ignore-value.h b/lib/ignore-value.h new file mode 100644 index 000000000..5f97c91c3 --- /dev/null +++ b/lib/ignore-value.h @@ -0,0 +1,45 @@ +/* ignore a value to quiet a compiler warning + + Copyright (C) 2008 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ + +/* Written by Jim Meyering. */ + +#ifndef __attribute__ +# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) +# define __attribute__(x) +# endif +#endif + +/* Use this function to avoid a warning when using a function declared with + gcc's warn_unused_result attribute, but for which you really do want to + ignore the result. Traditionally, people have used a "(void)" cast to + indicate that a function's return value is deliberately unused. However, + if the function is declared with __attribute__((warn_unused_result)), + gcc issues a warning even with the cast. + + Caution: most of the time, you really should heed gcc's warning, and + check the return value. However, in those exceptional cases in which + you're sure you know what you're doing, use this function. + + For the record, here's one of the ignorable warnings: + "copy.c:233: warning: ignoring return value of 'fchown', + declared with attribute warn_unused_result". */ + +static inline void +ignore_value (int i __attribute__ ((__unused__))) +{ + /* empty */ +} diff --git a/modules/ignore-value b/modules/ignore-value new file mode 100644 index 000000000..32991ab7a --- /dev/null +++ b/modules/ignore-value @@ -0,0 +1,22 @@ +Description: +ignore a value to quiet a compiler warning + +Files: +lib/ignore-value.h + +Depends-on: +inline + +configure.ac: + +Makefile.am: +lib_SOURCES += ignore-value.h + +Include: +#include + +License: +LGPL + +Maintainer: +Jim Meyering -- 2.11.0