diff options
Diffstat (limited to 'compiler/GHC/Hs/Utils.hs')
-rw-r--r-- | compiler/GHC/Hs/Utils.hs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/compiler/GHC/Hs/Utils.hs b/compiler/GHC/Hs/Utils.hs index ef5ad6e494..e945b3bc6e 100644 --- a/compiler/GHC/Hs/Utils.hs +++ b/compiler/GHC/Hs/Utils.hs @@ -1465,10 +1465,10 @@ hsConDeclsBinders cons in case unLoc r of -- remove only the first occurrence of any seen field in order to -- avoid circumventing detection of duplicate fields (#9156) - ConDeclGADT { con_names = names, con_g_args = args } + ConDeclGADT { con_names = names, con_body = body } -> (map (L loc . unLoc) names ++ ns, flds ++ fs) where - (remSeen', flds) = get_flds_gadt remSeen args + (remSeen', flds) = get_flds_gadt remSeen body (ns, fs) = go remSeen' rs ConDeclH98 { con_name = name, con_args = args } @@ -1482,9 +1482,9 @@ hsConDeclsBinders cons get_flds_h98 remSeen (RecCon flds) = get_flds remSeen flds get_flds_h98 remSeen _ = (remSeen, []) - get_flds_gadt :: Seen p -> HsConDeclGADTDetails (GhcPass p) + get_flds_gadt :: Seen p -> ConGadtSigBody (GhcPass p) -> (Seen p, [LFieldOcc (GhcPass p)]) - get_flds_gadt remSeen (RecConGADT flds _) = get_flds remSeen flds + get_flds_gadt remSeen (RecConGADT flds _ _) = get_flds remSeen flds get_flds_gadt remSeen _ = (remSeen, []) get_flds :: Seen p -> LocatedL [LConDeclField (GhcPass p)] |