guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: There is no returning


From: Mark H Weaver
Subject: Re: There is no returning
Date: Thu, 14 Nov 2013 19:13:02 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Paul Eggert <address@hidden> writes:

> Mark H Weaver wrote:
>> Looking at C11, it appears that _Noreturn belongs before the function
>> return type, whereas __attribute__ (__noreturn__) and SCM_NORETURN goes
>> after the formal parameter list.  So I don't see how your proposed
>> workaround can work properly.
>
> __attribute__ (__noreturn__) can be at the start of a declaration.

Ah, that's good!  So perhaps we should just import the relevant gnulib
module and convert all existing uses of SCM_NORETURN to use _Noreturn
instead.  What do you think?

However, it should be noted that in all existing Guile releases, uses of
SCM_NORETURN are always placed after the formal parameter list, so
Bruce's proposed workaround would effectively put _Noreturn after the
formal parameter list as well.  I guess it would work if _Noreturn
happens to be defined as __attribute__ ((__noreturn__)), but not in the
general case.

     Thanks,
       Mark



reply via email to

[Prev in Thread] Current Thread [Next in Thread]