There's code in rpeep() that eliminates duplicate nextstate ops.
E.g.
FOO -> NEXTSTATE1 -> NULL -> ... -> NULL -> NEXTSTATE2 -> ...
becomes
FOO --------------------------------------> NEXTSTATE2 -> ...
This code didn't leave oldoldop -> oldop -> o as a consistent chain of
adjacent op_next ops.
op_null(o);
if (oldop)
oldop->op_next = nextop;
+ o = nextop;
/* Skip (old)oldop assignment since the current oldop's
op_next already points to the next op. */
- continue;
+ goto redo;
}
}
break;