[GHC] #15462: fixST for lazy ST is a bit wrong