\begin{code}
-- | We attach SrcSpans to lots of things, so let's have a datatype for it.
data Located e = L SrcSpan e
- deriving (Typeable, Data)
+ deriving (Eq, Ord, Typeable, Data)
unLoc :: Located e -> e
unLoc (L _ e) = e
fmap f (L l e) = L l (f e)
instance Outputable e => Outputable (Located e) where
- ppr (L l e) = ifPprDebug (braces (pprUserSpan False l)) <> ppr e
+ ppr (L l e) = ifPprDebug (braces (pprUserSpan False l)) $$ ppr e
-- Print spans without the file name etc
\end{code}