Fix error message bug

Ill-typed expressions was causing hsl to generate broken code, causing
GHC to output error messages about the broken code instead of about the
user's expression.