This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Silence compiler warning on


> Date: Thu, 4 May 2006 14:39:30 -0400
> From: Daniel Jacobowitz <drow@false.org>
> 
> On Tue, Apr 18, 2006 at 11:12:57AM +0200, Mark Kettenis wrote:
> > Right now, when I compile BFD on HP-UX 10.20, I get the following
> > warning (wich is fatal because of -Werror):
> > 
> > /export/jive/kettenis/src/gdb/bfd/bfd.c: In function `_bfd_abort':
> > /export/jive/kettenis/src/gdb/bfd/bfd.c:801: warning: `noreturn' function does return
> > 
> > The problem here is that the system headers don't declare _exit() with
> > __attribute__((noreturn).  Previously we didn't get this warning
> > because _bfd_abort() called xexit(), which was declared with
> > __attribute__((noreturn)) (and xexit.c was compiled without -Werror).
> > 
> > The attached patch is an attempt to fix this.  Ok?
> >
> > Index: ChangeLog
> > from  Mark Kettenis  <kettenis@jive.nl>
> > 
> >         * bfd.c (_bfd_abort): Provide prototype for _exit with
> >         ATTRIBUTE_NORETURN.
> 
> I would like this fixed before binutils 2.17.  Does something like this
> work for you?

Unfortunately not :(

configure:11800: checking if we can redeclare _exit
configure:11821: gcc -c -g -O2   conftest.c >&5
conftest.c:80: ../include/ansidecl.h: No such file or directory

However, it seems that this only happens with GCC 2.95.3 (and probably
older versions).  Newer GCC versions seem to be aware of the fact that
_exit() will never return.  Perhaps people should just upgrade to a
newer GCC or use --disable-werror.

There is another nasty configure issue on HP-UX 10.20 though.  I'll
try to finish the patch I was working on today.

> 2006-05-04  Daniel Jacobiwtz  <dan@codesourcery.com>
> 
> 	* configure.in: Check if _exit with ATTRIBUTE_NORETURN is OK.
> 	* bfd.c (_bfd_abort): Handle USE_EXIT_NORETURN.
> 	* configure, config.in: Regenerated.

Mark


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]