Steven Bosscher wrote:
On 6/16/06, Mike Stump <[EMAIL PROTECTED]> wrote: > foo() { > int i = 99; > __builtin_setjmp(A) > if (i) { > print i > --i; > __builtin_longjump(A); > } > > It used to not infinite loop, now it does.We had an example just like this on IRC only a few weeks ago. ISTR it was decided that this triggers undefined behavior by C99 7.13.2.1 sub 3.
I think that every variable you do "weird" things with in C, must be declared volatile.
Paolo