diff options
Diffstat (limited to 'compiler/GHC/Hs/Utils.hs')
-rw-r--r-- | compiler/GHC/Hs/Utils.hs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/compiler/GHC/Hs/Utils.hs b/compiler/GHC/Hs/Utils.hs index 4dd0aab928..44182569e2 100644 --- a/compiler/GHC/Hs/Utils.hs +++ b/compiler/GHC/Hs/Utils.hs @@ -457,7 +457,11 @@ mkHsCharPrimLit :: Char -> HsLit (GhcPass p) mkHsCharPrimLit c = HsChar NoSourceText c mkConLikeTc :: ConLike -> HsExpr GhcTc -mkConLikeTc con = XExpr (ConLikeTc con [] []) +mkConLikeTc con = XExpr (ConLikeTc con arg_tys) + where + arg_tys = case con of + RealDataCon dc -> dataConOrigArgTys dc + PatSynCon {} -> [] {- ************************************************************************ @@ -812,7 +816,7 @@ mkHsWrapPatCo co pat ty | isTcReflCo co = pat | otherwise = XPat $ CoPat (mkWpCastN co) pat ty mkHsDictLet :: TcEvBinds -> LHsExpr GhcTc -> LHsExpr GhcTc -mkHsDictLet ev_binds expr = mkLHsWrap (mkWpLet ev_binds) expr +mkHsDictLet ev_binds expr = mkLHsWrap (mkWpEvLet ev_binds) expr {- l |