doneWithMsgThrowTo has invalid ASSERT when n_capabilities==1
I saw this assert fail in test foreigninterruptible when running with stage1.ghc-bin.ghc.link.opts += -debug in hadrian.settings
stack trace is lost to the ether, but note maybePerformBlockedException calls lockClosure, then doneWithMsgThrowTo. lockClosure doesn't reallyLockClosure when n_capabilities == 1, so the assertion is triggered.