help understanding a ghc assert failure wrt coercions