summaryrefslogtreecommitdiff
path: root/compiler/GHC/Tc/Deriv/Generate.hs
diff options
context:
space:
mode:
authorromes <rodrigo.m.mesquita@gmail.com>2022-03-10 20:02:36 +0000
committerMarge Bot <ben+marge-bot@smart-cactus.org>2022-03-18 05:10:58 -0400
commit310890a51372937afa69e1edac1179eba67ac046 (patch)
treea69e155c1f7bf29d3a2a4c5d2f0c394e1dfdf06f /compiler/GHC/Tc/Deriv/Generate.hs
parent19163397000ae3ce9886a75bef900d35774d864e (diff)
downloadhaskell-310890a51372937afa69e1edac1179eba67ac046.tar.gz
Separate constructors for typed and untyped brackets
Split HsBracket into HsTypedBracket and HsUntypedBracket. Unfortunately, we still cannot get rid of instance XXTypedBracket GhcTc = HsTypedBracket GhcRn despite no longer requiring it for typechecking, but rather because the TH desugarer works on GhcRn rather than GhcTc (See GHC.HsToCore.Quote)
Diffstat (limited to 'compiler/GHC/Tc/Deriv/Generate.hs')
-rw-r--r--compiler/GHC/Tc/Deriv/Generate.hs10
1 files changed, 5 insertions, 5 deletions
diff --git a/compiler/GHC/Tc/Deriv/Generate.hs b/compiler/GHC/Tc/Deriv/Generate.hs
index d61ad20707..526c18706a 100644
--- a/compiler/GHC/Tc/Deriv/Generate.hs
+++ b/compiler/GHC/Tc/Deriv/Generate.hs
@@ -1630,12 +1630,12 @@ gen_Lift_binds loc (DerivInstTys{ dit_rep_tc = tycon
(listToBag [lift_bind, liftTyped_bind], emptyBag)
where
lift_bind = mkFunBindEC 1 loc lift_RDR (nlHsApp pure_Expr)
- (map (pats_etc mk_exp mk_usplice liftName) data_cons)
+ (map (pats_etc mk_untyped_bracket mk_usplice liftName) data_cons)
liftTyped_bind = mkFunBindEC 1 loc liftTyped_RDR (nlHsApp unsafeCodeCoerce_Expr . nlHsApp pure_Expr)
- (map (pats_etc mk_texp mk_tsplice liftTypedName) data_cons)
+ (map (pats_etc mk_typed_bracket mk_tsplice liftTypedName) data_cons)
- mk_exp = ExpBr noExtField
- mk_texp = TExpBr noExtField
+ mk_untyped_bracket = HsUntypedBracket noAnn . ExpBr noExtField
+ mk_typed_bracket = HsTypedBracket noAnn . TExpBr noExtField
mk_usplice = HsUntypedSplice EpAnnNotUsed DollarSplice
mk_tsplice = HsTypedSplice EpAnnNotUsed DollarSplice
@@ -1648,7 +1648,7 @@ gen_Lift_binds loc (DerivInstTys{ dit_rep_tc = tycon
data_con_RDR = getRdrName data_con
con_arity = dataConSourceArity data_con
as_needed = take con_arity as_RDRs
- lift_Expr = noLocA (HsBracket noAnn (mk_bracket br_body))
+ lift_Expr = noLocA (mk_bracket br_body)
br_body = nlHsApps (Exact (dataConName data_con))
(map lift_var as_needed)