うーん、マルチスレッドだと充分起こり得る状況だと思うけどな。
Cの規格書では複数スレッドの共有変数に対する排他制御については考慮していないし実装依存の部分だろう、これは。