From: Jim Meyering Date: Wed, 8 Oct 2008 08:44:12 +0000 (+0200) Subject: maint: avoid warnings due to attribute warn_unused_result X-Git-Tag: v7.1~174 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bb7fa1e9321e6469c0738c33f5e5bb8ac3d62067;p=thirdparty%2Fcoreutils.git maint: avoid warnings due to attribute warn_unused_result Now that a (void) cast no longer suffices to ignore warnings from gcc about uses of functions marked with the warn_unused_result attribute, we need an alternative. 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" * bootstrap.conf (gnulib_modules): Import ignore-value. * src/copy.c: Include "ignore-value.h". (set_owner): Use ignore_value in place of "(void)" casts, to ignore lchown and fchown failures. * src/cp.c (re_protect): Likewise, to ignore lchown failure. * src/remove.c (preprocess_dir): Remove unnecessary "(void)" cast. --- diff --git a/bootstrap.conf b/bootstrap.conf index 6405955c6f..c6698f1140 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -61,6 +61,7 @@ gnulib_modules=" gitlog-to-changelog gnu-make gnumakefile gnupload group-member hard-locale hash hash-pjw host-os human idcache + ignore-value inttostr inttypes isapipe lchmod lchown lib-ignore linebuffer link-follow long-options lstat malloc mbswidth memcasecmp mempcpy diff --git a/src/copy.c b/src/copy.c index 82c6978e4e..5a584752d4 100644 --- a/src/copy.c +++ b/src/copy.c @@ -44,6 +44,7 @@ #include "full-write.h" #include "hash.h" #include "hash-triple.h" +#include "ignore-value.h" #include "lchmod.h" #include "quote.h" #include "same.h" @@ -230,7 +231,7 @@ set_owner (const struct cp_options *x, char const *dst_name, int dest_desc, /* We've failed to set *both*. Now, try to set just the group ID, but ignore any failure here, and don't change errno. */ int saved_errno = errno; - (void) fchown (dest_desc, -1, gid); + ignore_value (fchown (dest_desc, -1, gid)); errno = saved_errno; } } @@ -243,7 +244,7 @@ set_owner (const struct cp_options *x, char const *dst_name, int dest_desc, /* We've failed to set *both*. Now, try to set just the group ID, but ignore any failure here, and don't change errno. */ int saved_errno = errno; - (void) lchown (dst_name, -1, gid); + ignore_value (lchown (dst_name, -1, gid)); errno = saved_errno; } } diff --git a/src/cp.c b/src/cp.c index 77d47027d0..58c9c0953b 100644 --- a/src/cp.c +++ b/src/cp.c @@ -29,6 +29,7 @@ #include "cp-hash.h" #include "error.h" #include "filenamecat.h" +#include "ignore-value.h" #include "lchmod.h" #include "quote.h" #include "stat-time.h" @@ -326,7 +327,7 @@ re_protect (char const *const_dst_name, size_t src_offset, } /* Failing to preserve ownership is OK. Still, try to preserve the group, but ignore the possible error. */ - (void) lchown (dst_name, -1, p->st.st_gid); + ignore_value (lchown (dst_name, -1, p->st.st_gid)); } } diff --git a/src/remove.c b/src/remove.c index 2e342c0922..e92f78caf3 100644 --- a/src/remove.c +++ b/src/remove.c @@ -1423,7 +1423,7 @@ preprocess_dir (DIR **dirp, struct rm_options const *x) for (size_t i = 0; i < n; i++) { /* ignore failure */ - (void) unlinkat (dir_fd, vv[i]->name, 0); + unlinkat (dir_fd, vv[i]->name, 0); } cleanup: