------- Comment #3 from pinskia at gcc dot gnu dot org 2006-02-14 03:51 ------- Can you try: #include <setjmp.h> jmp_buf jb_error; void jump(void){ longjmp(jb_error,1); } void func1(void){ return; } int main(void){ if(setjmp(jb_error)) return 0; func1(); jump(); }
I am wondering if you are invoking undefined behavior in calling longjmp twice on the same setjmp. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26219