Das wird wirklich nicht zur Nachahmung empfohlen:
#include <setjmp.h>
static jmp_buf buf;
int dup (int x) { return succ (2*x); }
int succ (int x) { longjmp (buf, 5); }
int main () {
int x = setjmp(buf);
int y = x ? 3*x : dup (x);
}
siehe auch http://en.wikipedia.org/wiki/Longjmp