diff --git a/configure.ac b/configure.ac
index acdc2d5..7b41b9d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 AC_CONFIG_AUX_DIR([config])
 AC_CONFIG_FILES([config/Makefile])
 
-AC_COPYRIGHT([Copyright (C) 1996-2003, 2004, 2005, 2006 Red Hat, Inc.])
+AC_COPYRIGHT([Copyright (C) 1996-2003, 2004, 2005, 2006, 2007 Red Hat, Inc.])
 AC_PREREQ(2.59)			dnl Minimum Autoconf version required.
 
 AM_INIT_AUTOMAKE([gnits 1.7])
diff --git a/src/ChangeLog b/src/ChangeLog
index 39f7764..9a3b2ee 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,9 +1,15 @@
 2007-02-05  Ulrich Drepper  <drepper@redhat.com>
 
+	* ar.r: Add ugly hack to work around gcc complaining that we
+	ignore fchown's return value.
+	(do_oper_insert): Handle error when writing padding.
+	* ranlib.c: Add fchown complain work around.
+
 	* arlib.c: Make symtab a global variable.  Change all users.
 	* arlib2.c: Likewise.
 	* ranlib.c: Likewise.
 	* ar.c: Likewise.
+
 	* arlib.h: Declare it.
 
 2007-01-11  Roland McGrath  <roland@redhat.com>
diff --git a/src/ar.c b/src/ar.c
index 19ad403..37fa3e0 100644
--- a/src/ar.c
+++ b/src/ar.c
@@ -795,7 +795,8 @@
 		     original file has.  */
 		  || fchmod (newfd, st.st_mode & ALLPERMS) != 0
 		  /* Never complain about fchown failing.  */
-		  || (fchown (newfd, st.st_uid, st.st_gid),
+		  || (({asm ("" :: "r" (fchown (newfd, st.st_uid,
+						st.st_gid))); }),
 		      close (newfd) != 0)
 		  || (newfd = -1, rename (tmpfname, arfname) != 0))
 		goto nonew_unlink;
@@ -1039,7 +1040,7 @@
      has.  */
   if (fchmod (newfd, st.st_mode & ALLPERMS) != 0
       /* Never complain about fchown failing.  */
-      || (fchown (newfd, st.st_uid, st.st_gid),
+      || (({asm ("" :: "r" (fchown (newfd, st.st_uid, st.st_gid))); }),
 	  close (newfd) != 0)
       || (newfd = -1, rename (tmpfname, arfname) != 0))
     goto nonew_unlink;
@@ -1478,7 +1479,8 @@
 
 	      /* Pad the file if its size is odd.  */
 	      if ((all->size & 1) != 0)
-		write (newfd, "\n", 1);
+		if (write (newfd, "\n", 1) != 1)
+		  goto nonew_unlink;
 	    }
 	  else
 	    {
@@ -1501,7 +1503,7 @@
   if (fd != -1
       && (fchmod (newfd, st.st_mode & ALLPERMS) != 0
 	  /* Never complain about fchown failing.  */
-	  || (fchown (newfd, st.st_uid, st.st_gid),
+	  || (({asm ("" :: "r" (fchown (newfd, st.st_uid, st.st_gid))); }),
 	      close (newfd) != 0)
 	  || (newfd = -1, rename (tmpfname, arfname) != 0)))
       goto nonew_unlink;
diff --git a/src/ranlib.c b/src/ranlib.c
index 9a884cb..d86a8e3 100644
--- a/src/ranlib.c
+++ b/src/ranlib.c
@@ -289,7 +289,7 @@
 		 original file has.  */
 	      || fchmod (newfd, st.st_mode & ALLPERMS) != 0
 	      /* Never complain about fchown failing.  */
-	      || (fchown (newfd, st.st_uid, st.st_gid),
+	      || (({asm ("" :: "r" (fchown (newfd, st.st_uid, st.st_gid))); }),
 		  close (newfd) != 0)
 	      || (newfd = -1, rename (tmpfname, fname) != 0))
 	    goto nonew_unlink;
