Variables live across a setjmp/lj must be volatile.

According to http://pubs.opengroup.org/onlinepubs/7908799/xsh/setjmp.html
among other places, the 'int x' here should be volatile so that it has
the correct value. Otherwise, the behavior will be indeterminate.