@@ -25,6 +25,7 @@ p_sigDecl = line . p_sigDecl'
2525p_sigDecl' :: Sig GhcPs -> R ()
2626p_sigDecl' = \case
2727 TypeSig NoExt names hswc -> p_typeSig names hswc
28+ PatSynSig NoExt names hsib -> p_patSynSig names hsib
2829 ClassOpSig NoExt def names hsib -> p_classOpSig def names hsib
2930 FixSig NoExt sig -> p_fixSig sig
3031 InlineSig NoExt name inlinePragma -> p_inlineSig name inlinePragma
@@ -56,6 +57,14 @@ p_typeAscription HsWC {..} = do
5657 located (hsib_body hswc_body) p_hsType
5758p_typeAscription (XHsWildCardBndrs NoExt) = notImplemented "XHsWildCardBndrs"
5859
60+p_patSynSig
61+ :: [Located RdrName]
62+ -> HsImplicitBndrs GhcPs (LHsType GhcPs)
63+ -> R ()
64+p_patSynSig names hsib = do
65+ txt "pattern "
66+ p_typeSig names HsWC {hswc_ext = NoExt, hswc_body = hsib}
67+
5968p_classOpSig
6069 :: Bool -- ^ Whether this is a \"default\" signature
6170 -> [Located RdrName] -- ^ Names (before @::@)