Recover role of a type variable in source Haskell