diff --git a/compiler/GHC/Hs/Utils.hs b/compiler/GHC/Hs/Utils.hs index 347f7c9a130f0a72978288fb88331c236de71b79..3fb70e8ee585ebb86b62e2bfc8ee72b6a97aee3e 100644 --- a/compiler/GHC/Hs/Utils.hs +++ b/compiler/GHC/Hs/Utils.hs @@ -736,12 +736,12 @@ mkBigLHsPatTup = mkChunkified mkLHsPatTup -- | Convert an 'LHsType' to an 'LHsSigType'. hsTypeToHsSigType :: LHsType GhcPs -> LHsSigType GhcPs -hsTypeToHsSigType lty@(L loc ty) = L loc $ case ty of +hsTypeToHsSigType lty@(L loc ty) = case ty of HsForAllTy { hst_tele = HsForAllInvis { hsf_xinvis = an , hsf_invis_bndrs = bndrs } , hst_body = body } - -> mkHsExplicitSigType an bndrs body - _ -> mkHsImplicitSigType lty + -> L loc $ mkHsExplicitSigType an bndrs body + _ -> L (l2l loc) $ mkHsImplicitSigType lty -- The annotations are in lty, erase them from loc -- | Convert an 'LHsType' to an 'LHsSigWcType'. hsTypeToHsSigWcType :: LHsType GhcPs -> LHsSigWcType GhcPs