First time I saw it was in COBOL class
Learning loops. One student straight coded, no loop. Program kept abending. Not knowing what we were looking at, we dumped the error log and looked at the generated assembler code. Comparing first pass to 2nd pass we found one instruction out of sequence. Student (not me) put in goto dummy and goto back everything worked. Since then I've always been aware of timing issues. They pop up at the most inopportune times. As you have just seen. :-(
A good friend will come and bail you out of jail ... but, a true friend will be sitting next to you saying, "Damn...that was fun!"