deliberately return non-zero to setjmp from longjmp. Otherwise this code fails to compile.
which copes with errors in a plausible way