Fix issue 12691 std.regex.bmatch bug in empty OR operator inside of ()*

Must save variables that track advancement inside of infinite loops
on per-thread basis. Apparently no amount of trickery would let us avoid it.