typedef struct { whatever-you-need } jmp_buf[1];
solves the problem of the way setjmp()'s parameter is used,
with completely type-correct implementation (in the
"whatever-you-need" part). Too bad setjmp() was defined
as taking an array parameter in the first place.