-ppr_expr (HsReify r) = ppr r
-
-ppr_expr (HsProc pat (HsCmdTop cmd _ _ _) _)
- = hsep [ptext SLIT("proc"), ppr pat, ptext SLIT("->"), pprExpr cmd]
-
-ppr_expr (HsArrApp arrow arg _ HsFirstOrderApp True _)
- = hsep [ppr_expr arrow, ptext SLIT("-<"), ppr_expr arg]
-ppr_expr (HsArrApp arrow arg _ HsFirstOrderApp False _)
- = hsep [ppr_expr arg, ptext SLIT(">-"), ppr_expr arrow]
-ppr_expr (HsArrApp arrow arg _ HsHigherOrderApp True _)
- = hsep [ppr_expr arrow, ptext SLIT("-<<"), ppr_expr arg]
-ppr_expr (HsArrApp arrow arg _ HsHigherOrderApp False _)
- = hsep [ppr_expr arg, ptext SLIT(">>-"), ppr_expr arrow]
-
-ppr_expr (HsArrForm (HsVar v) (Just _) [arg1, arg2] _)
- = sep [pprCmdArg arg1, hsep [pprInfix v, pprCmdArg arg2]]
-ppr_expr (HsArrForm op _ args _)
- = hang (ptext SLIT("(|") <> ppr_expr op)
- 4 (sep (map pprCmdArg args) <> ptext SLIT("|)"))
+
+ppr_expr (HsProc pat (L _ (HsCmdTop cmd _ _ _)))
+ = hsep [ptext SLIT("proc"), ppr pat, ptext SLIT("->"), ppr cmd]
+
+ppr_expr (HsArrApp arrow arg _ HsFirstOrderApp True)
+ = hsep [ppr_lexpr arrow, ptext SLIT("-<"), ppr_lexpr arg]
+ppr_expr (HsArrApp arrow arg _ HsFirstOrderApp False)
+ = hsep [ppr_lexpr arg, ptext SLIT(">-"), ppr_lexpr arrow]
+ppr_expr (HsArrApp arrow arg _ HsHigherOrderApp True)
+ = hsep [ppr_lexpr arrow, ptext SLIT("-<<"), ppr_lexpr arg]
+ppr_expr (HsArrApp arrow arg _ HsHigherOrderApp False)
+ = hsep [ppr_lexpr arg, ptext SLIT(">>-"), ppr_lexpr arrow]
+
+ppr_expr (HsArrForm (L _ (HsVar v)) (Just _) [arg1, arg2])
+ = sep [pprCmdArg (unLoc arg1), hsep [pprInfix v, pprCmdArg (unLoc arg2)]]
+ppr_expr (HsArrForm op _ args)
+ = hang (ptext SLIT("(|") <> ppr_lexpr op)
+ 4 (sep (map (pprCmdArg.unLoc) args) <> ptext SLIT("|)"))