$!はnil)けど、mameさんの奴だと現象変わらんGET_THREAD()->errinfoじゃなくてth->errinfoじゃないといけないとかそんなんかしら$!はnilになるべきなん?nilになるべきだとおもふ。FATALは例外じゃないんだから$!に入れるべきものはない。故にnilのままでいいのではないか。いうのが私めの見解でございます。rb_threadptr_execute_interrupts_recでerrinfoにINT2FIX(TAG_FATAL)入れてるのがおかしくない?それがおかしい、というのは思わなくもない。こっちのスレッドでもInterrupt例外が起きました、というのが真っ当な気もするですよね。$!は直接Interruptで抜けてるわけでもないんだよなうんInterruptで終わろうとしてるのはmainだけうんなので、Interruptは全スレッドで起こそうよ、という提案なわけです。今から入れるの怖すぎると思う。(じゃあ提案するな)Interruptだと止められるrescueできるensureでretryとかはとりあえず無視したがって見えるべきなのはfatalかなんかではで、このパターンはそういう解もありえるんじゃないかという程度だけど、他のFATALになるパターンがあるとして、そういう時は結局$!をnilにして処理を進めるしかないんじゃない?fatalって見えるもんだっけ?ふつうはみえないfatalを見えるようにする、という仕様変更それも怖すぎる。意味論が明確じゃないから責めようがない。end}.joinでCtrl+Cしてもやっぱりnilこれと違うようにする理由は特にないんじゃない。