1#ifndef _SETJMP_H
2#include <setjmp/setjmp.h>
3
4#ifndef _ISOMAC
5/* Now define the internal interfaces. */
6
7/* Internal machine-dependent function to restore context sans signal mask. */
8extern void __longjmp (__jmp_buf __env, int __val)
9 __attribute__ ((__noreturn__)) attribute_hidden;
10
11extern void ____longjmp_chk (__jmp_buf __env, int __val)
12 __attribute__ ((__noreturn__)) attribute_hidden;
13
14extern void __longjmp_chk (sigjmp_buf env, int val)
15 __attribute__ ((noreturn)) attribute_hidden;
16/* The redirection in the installed header does not work with
17 libc_hidden_proto. */
18#define longjmp __longjmp_chk
19#define siglongjmp __longjmp_chk
20libc_hidden_proto (__longjmp_chk)
21
22/* Internal function to possibly save the current mask of blocked signals
23 in ENV, and always set the flag saying whether or not it was saved.
24 This is used by the machine-dependent definition of `__sigsetjmp'.
25 Always returns zero, for convenience. */
26extern int __sigjmp_save (jmp_buf __env, int __savemask);
27
28extern void _longjmp_unwind (jmp_buf env, int val);
29
30extern void __libc_siglongjmp (sigjmp_buf env, int val)
31 __attribute__ ((noreturn)) attribute_hidden;
32extern void __libc_longjmp (sigjmp_buf env, int val)
33 __attribute__ ((noreturn)) attribute_hidden;
34
35libc_hidden_proto (_setjmp)
36libc_hidden_proto (__sigsetjmp)
37
38# if IS_IN (rtld)
39extern __typeof (__sigsetjmp) __sigsetjmp attribute_hidden;
40# endif
41
42#endif
43
44#endif
45

Provided by KDAB

Privacy Policy
Update your C++ knowledge – Modern C++11/14/17 Training
Find out more

source code of glibc/include/setjmp.h