Mark H Weaver wrote:
> 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?

I think it'll work; at least, _Noreturn has worked for Gnulib fairly well
since we introduced it in summer 2011.

> 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.

Yes, that sounds right.  If user code employs SCM_NORETURN in that position
and you therefore you can't change SCM_NORETURNto mean _Noreturn, it might be 
simpler
to keep SCM_NORETURN the way it is for backwards compatibility.  But you
can change all its uses in Guile to be _Noreturn at the start of the 
declaration,
where _Noreturn is defined the Gnulib way.

Reply via email to