#pragma once
#ifdef __cplusplus
extern "C" {
#endif
#include <features.h>
#include <signal.h>
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
#define NGREG (sizeof(gregset_t) / sizeof(greg_t))
#endif
struct __ucontext;
int getcontext(struct __ucontext*);
void makecontext(struct __ucontext*, void (*)(void), int, ...);
int setcontext(const struct __ucontext*);
int swapcontext(struct __ucontext*, const struct __ucontext*);
#ifdef __cplusplus
}
#endif