Subject: Re: standards/7112: setjmp is a function
To: Jason Thorpe <>
From: Krister Walfridsson <>
List: tech-userlevel
Date: 03/09/1999 19:49:02
On Mon, 8 Mar 1999, Jason Thorpe wrote:

> I don't really see how this can be an issue.  What if the macro itself
> calls functions?!  I.e. you might just have to do that on some systems
> (e.g. SVR4 which uses getcontext(2) to do setjmp(3)).

The thing the egcs people wanted to do was check if <setjmp.h> had been
included (don't ask me why), and "since setjmp is a macro", the idea was
to do something like 

   #ifdef setjmp
   extern void set_float_handler PROTO((jmp_buf));
   extern int push_float_handler PROTO((jmp_buf, jmp_buf));
   extern void pop_float_handler PROTO((int, jmp_buf));

But ITOH Yasufumi is right that it doesn't need to be a macro. I guess
the wording is there to say that you cannot take the address of setjmp.