[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Locks and threads
From: |
Linas Vepstas |
Subject: |
Re: Locks and threads |
Date: |
Fri, 6 Mar 2009 06:36:32 -0600 |
2009/3/6 Andy Wingo <address@hidden>:
> Hi Linas,
>
> On Thu 05 Mar 2009 22:56, Linas Vepstas <address@hidden> writes:
>
>> Perhaps I'm naive, perhaps some naming convention
>> could be used to indicate that SCM_OUT_OF_RANGE
>> will never return? None of the functions in the call stack
>> gave any real hint that they might now return; they mostly
>> looked liked ordinary functions.
>
> Changing the names would be quite an undertaking. Perhaps we should be
> more clear about this point in the docs, though, as it is fundamental to
> Guile programming in C.
The Linux kernel uses the gcc markup
__attribute__((noreturn))
to indicate a function that does not return; so e.g.
void blahfunc(SCM args) __attribute__((noreturn));
It used to be common to see
#define NORET __attribute__((noreturn))
and
void NORET blafunc(...);
put that style passed on ...
I have no clue what the compiler does with this.
perhaps it handles the stack differently, knowing
its never unwound, or maybe it doesn't generate
the function epilogue.
Even if the compiler does nothing, it would still be
a handy clue to the programmer reading the code!
--linas
/usr/src/linux-2.6.28.4# grep -r noreturn * |wc
92 439 7488
- Re: Locks and threads, Neil Jerram, 2009/03/04
- Re: Locks and threads, Linas Vepstas, 2009/03/04
- Re: Locks and threads, Neil Jerram, 2009/03/05
- Re: Locks and threads, Linas Vepstas, 2009/03/05
- Re: Locks and threads, Neil Jerram, 2009/03/05
- Re: Locks and threads, Linas Vepstas, 2009/03/05
- Re: Locks and threads, Andy Wingo, 2009/03/06
- Re: Locks and threads,
Linas Vepstas <=
- Re: Locks and threads, Ludovic Courtès, 2009/03/06
- Re: Locks and threads, Neil Jerram, 2009/03/08
- Re: Locks and threads, Neil Jerram, 2009/03/25
- Re: Locks and threads, Ludovic Courtès, 2009/03/25
Re: Locks and threads, Ludovic Courtès, 2009/03/05
Re: Locks and threads, Neil Jerram, 2009/03/10