diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2005-11-09 09:53:53 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2005-11-09 09:53:53 -0800 |
commit | f054627f500450a7aadeaf8a9930354fb268718e (patch) | |
tree | 29f977b641c6437a720d96e87fe4d6d9ab768d2e /klibc/include/setjmp.h | |
parent | 54eb6a122fc6d2d765b9f71f9b47d529c1acf30f (diff) | |
parent | e5bdb75a109c446ff0ca2e27268cdd274ee61a9c (diff) |
Merge branch 'master' of gregkh@master.kernel.org:/pub/scm/linux/hotplug/udev
Diffstat (limited to 'klibc/include/setjmp.h')
-rw-r--r-- | klibc/include/setjmp.h | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/klibc/include/setjmp.h b/klibc/include/setjmp.h deleted file mode 100644 index b504eb6d08..0000000000 --- a/klibc/include/setjmp.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - * setjmp.h - */ - -#ifndef _SETJMP_H -#define _SETJMP_H - -#include <klibc/extern.h> -#include <klibc/compiler.h> -#include <stddef.h> -#include <signal.h> - -#include <klibc/archsetjmp.h> - -__extern int setjmp(jmp_buf); -__extern __noreturn longjmp(jmp_buf, int); - -/* - Whose bright idea was it to add unrelated functionality to just about - the only function in the standard C library (setjmp) which cannot be - wrapped by an ordinary function wrapper? Anyway, the damage is done, - and therefore, this wrapper *must* be inline. However, gcc will - complain if this is an inline function for unknown reason, and - therefore sigsetjmp() needs to be a macro. -*/ - -struct __sigjmp_buf { - jmp_buf __jmpbuf; - sigset_t __sigs; -}; - -typedef struct __sigjmp_buf sigjmp_buf[1]; - -#define sigsetjmp(__env, __save) \ -({ \ - struct __sigjmp_buf *__e = (__env); \ - sigprocmask(0, NULL, &__e->__sigs); \ - setjmp(__e->__jmpbuf); \ -}) - -__extern __noreturn siglongjmp(sigjmp_buf, int); - -#endif /* _SETJMP_H */ |