GNU bug report logs - #15463
FTBFS c-stack under gcc 4.8 with --enable-gcc-warnings

Previous Next

Package: diffutils;

Reported by: Eric Blake <eblake <at> redhat.com>

Date: Wed, 25 Sep 2013 18:02:01 UTC

Severity: normal

Done: Paul Eggert <eggert <at> cs.ucla.edu>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 15463 in the body.
You can then email your comments to 15463 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-diffutils <at> gnu.org:
bug#15463; Package diffutils. (Wed, 25 Sep 2013 18:02:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Eric Blake <eblake <at> redhat.com>:
New bug report received and forwarded. Copy sent to bug-diffutils <at> gnu.org. (Wed, 25 Sep 2013 18:02:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Eric Blake <eblake <at> redhat.com>
To: bug-diffutils <at> gnu.org, Bug-gnulib <bug-gnulib <at> gnu.org>
Subject: FTBFS c-stack under gcc 4.8 with --enable-gcc-warnings
Date: Wed, 25 Sep 2013 12:01:01 -0600
[Message part 1 (text/plain, inline)]
I tried to build diffutils from git on my Fedora 19 machine:

$ gcc --version |head -n1
gcc (GCC) 4.8.1 20130603 (Red Hat 4.8.1-1)

It's dying inside of gnulib's c-stack:

  CC       c-stack.o
c-stack.c: In function 'segv_handler':
c-stack.c:163:12: error: function might be candidate for attribute
'pure' if it is known to return normally [-Werror=suggest-attribute=pure]
 static int segv_handler (void *address __attribute__ ((unused)),
            ^
cc1: all warnings being treated as errors

I don't know if this is a case of diffutils being too aggressive about
the warnings it uses on gnulib files (after all, at least coreutils
explicitly uses fewer warnings for gnulib files than for its own), or if
it is something we should be fixing in gnulib.

More interesting, the function is only pure if DEBUG was not enabled
during compilation, so if we do decide to fix it in gnulib, the fix has
to use the same condition on whether to apply the attribute.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

[signature.asc (application/pgp-signature, attachment)]

Reply sent to Paul Eggert <eggert <at> cs.ucla.edu>:
You have taken responsibility. (Thu, 26 Sep 2013 19:22:02 GMT) Full text and rfc822 format available.

Notification sent to Eric Blake <eblake <at> redhat.com>:
bug acknowledged by developer. (Thu, 26 Sep 2013 19:22:03 GMT) Full text and rfc822 format available.

Message #10 received at 15463-done <at> debbugs.gnu.org (full text, mbox):

From: Paul Eggert <eggert <at> cs.ucla.edu>
To: Eric Blake <eblake <at> redhat.com>
Cc: 15463-done <at> debbugs.gnu.org, bug-gnulib <at> gnu.org
Subject: Re: [bug-diffutils] bug#15463: FTBFS c-stack under gcc 4.8 with
 --enable-gcc-warnings
Date: Thu, 26 Sep 2013 12:21:44 -0700
On 09/25/13 11:01, Eric Blake wrote:
> I don't know if this is a case of diffutils being too aggressive about
> the warnings it uses on gnulib files

Yes, that sounds good enough.  I pushed this into diffutils:

From 1d69c1591812101e2dffa64c45e2f1c3c901fadc Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert <at> cs.ucla.edu>
Date: Thu, 26 Sep 2013 12:20:00 -0700
Subject: [PATCH] build: omit -Wsuggest-attribute=pure for lib

* configure.ac (WARN_CFLAGS): Omit -Wsuggest-attribute=pure
when compiling the lib subdirectory.  Reported for Fedora 19
by Eric Blake in <http://bugs.gnu.org/15463>.
---
 configure.ac | 1 +
 1 file changed, 1 insertion(+)

diff --git a/configure.ac b/configure.ac
index 90bebc9..f7efcb1 100644
--- a/configure.ac
+++ b/configure.ac
@@ -123,6 +123,7 @@ if test "$gl_gcc_warnings" = yes; then
   nw="$nw -Wunused-macros"
   nw="$nw -Wmissing-prototypes"
   nw="$nw -Wold-style-definition"
+  nw="$nw -Wsuggest-attribute=pure"
   gl_MANYWARN_COMPLEMENT([GNULIB_WARN_CFLAGS], [$WARN_CFLAGS], [$nw])
   AC_SUBST([GNULIB_WARN_CFLAGS])
 fi
-- 
1.8.3.1






bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 25 Oct 2013 11:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 10 years and 186 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.