[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: AC_C_NORETURN macro?
From: |
Nick Bowler |
Subject: |
Re: AC_C_NORETURN macro? |
Date: |
Thu, 26 Apr 2012 12:08:50 -0400 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On 2012-04-26 17:56 +0200, Vincent Lefevre wrote:
> On 2012-04-26 09:15:53 -0600, Eric Blake wrote:
> > On 04/26/2012 09:02 AM, Vincent Lefevre wrote:
> > > On 2012-04-26 08:14:51 -0600, Eric Blake wrote:
> > >> Correct. _Noreturn is an optimization hint; your code will still
> > >> function correctly if the specifier is not present. The gnulib choice
> > >> to define it away on problematic systems is intentional.
> > >
> > > If I understand the gnulib code, gnulib defines it away also on pure
> > > C11 implementations (and not complete implementations that understand
> > > _Noreturn), which are not problematic systems!
> >
> > You missed an aspect - gnulib only provides a replacement
> > <stdnoreturn.h> header on non-C11 systems; on systems where the system
> > header is compliant, there is no need for gnulib to interject a
> > replacement. Therefore, under C11, gnulib is not defining anything away.
>
> Ah, OK.
>
> But I think that <stdnoreturn.h> is not a solution for MPFR, due to
> the potential clashes with GMP (on which we depend), which uses GCC's
> __attribute__ ((noreturn)). Though this may be fixed in the future,
> problems would still appear with older versions. Thus we should use
> _Noreturn directly, when supported.
Another alternative is to simply make sure that you always include the
GMP headers before including <stdnoreturn.h>.
Cheers,
--
Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)
- AC_C_NORETURN macro?, Vincent Lefevre, 2012/04/25
- Re: AC_C_NORETURN macro?, Eric Blake, 2012/04/25
- Re: AC_C_NORETURN macro?, Vincent Lefevre, 2012/04/26
- Re: AC_C_NORETURN macro?, Eric Blake, 2012/04/26
- Re: AC_C_NORETURN macro?, Vincent Lefevre, 2012/04/26
- Re: AC_C_NORETURN macro?, Eric Blake, 2012/04/26
- Re: AC_C_NORETURN macro?, Vincent Lefevre, 2012/04/26
- Re: AC_C_NORETURN macro?,
Nick Bowler <=
- Re: AC_C_NORETURN macro?, Vincent Lefevre, 2012/04/27
- Re: AC_C_NORETURN macro?, Russ Allbery, 2012/04/26
- Re: AC_C_NORETURN macro?, Vincent Lefevre, 2012/04/27
- Re: AC_C_NORETURN macro?, Paul Eggert, 2012/04/28
- Re: AC_C_NORETURN macro?, Bruno Haible, 2012/04/29
- Re: AC_C_NORETURN macro?, Vincent Lefevre, 2012/04/29
- Re: AC_C_NORETURN macro?, Bruno Haible, 2012/04/29
- Re: AC_C_NORETURN macro?, Paul Eggert, 2012/04/29
- Re: AC_C_NORETURN macro?, Bruno Haible, 2012/04/29
- Re: AC_C_NORETURN macro?, Paul Eggert, 2012/04/29