summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2008-10-08 10:44:12 +0200
committerJim Meyering <meyering@redhat.com>2008-10-17 07:06:54 +0200
commitbb7fa1e9321e6469c0738c33f5e5bb8ac3d62067 (patch)
tree73bde1a782e5e8967e91992314fcc7448cf081b4
parent16c806208576ebc5713d74e828198caba0c5fd5a (diff)
downloadcoreutils-bb7fa1e9321e6469c0738c33f5e5bb8ac3d62067.tar.xz
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.
-rw-r--r--bootstrap.conf1
-rw-r--r--src/copy.c5
-rw-r--r--src/cp.c3
-rw-r--r--src/remove.c2
4 files changed, 7 insertions, 4 deletions
diff --git a/bootstrap.conf b/bootstrap.conf
index 6405955c6..c6698f114 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 82c6978e4..5a584752d 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 77d47027d..58c9c0953 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 2e342c092..e92f78caf 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: