[GHC] #7924: throwIO gets subsumed by a later imprecise exception