diff options
author | Josh Meredith <joshmeredith2008@gmail.com> | 2019-12-04 23:39:28 +1100 |
---|---|---|
committer | Josh Meredith <joshmeredith2008@gmail.com> | 2019-12-04 23:39:28 +1100 |
commit | a8435165b84c32fd2ebdd1281dd6ee077e07ad5a (patch) | |
tree | 791936d014aeaa26174c2dcbef34c14f3329dd04 /compiler/GHC/Hs/Pat.hs | |
parent | 7805441b4d5e22eb63a501e1e40383d10380dc92 (diff) | |
parent | f03a41d4bf9418ee028ecb51654c928b2da74edd (diff) | |
download | haskell-a8435165b84c32fd2ebdd1281dd6ee077e07ad5a.tar.gz |
Merge branch 'master' into wip/binary-readerTwip/binary-readerT
Diffstat (limited to 'compiler/GHC/Hs/Pat.hs')
-rw-r--r-- | compiler/GHC/Hs/Pat.hs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/compiler/GHC/Hs/Pat.hs b/compiler/GHC/Hs/Pat.hs index cae7144a8c..d8ae451ee9 100644 --- a/compiler/GHC/Hs/Pat.hs +++ b/compiler/GHC/Hs/Pat.hs @@ -710,7 +710,7 @@ isIrrefutableHsPat go (ConPatIn {}) = False -- Conservative go (ConPatOut - { pat_con = (dL->L _ (RealDataCon con)) + { pat_con = L _ (RealDataCon con) , pat_args = details }) = isJust (tyConSingleDataCon_maybe (dataConTyCon con)) @@ -718,9 +718,8 @@ isIrrefutableHsPat -- the latter is false of existentials. See #4439 && all goL (hsConPatArgs details) go (ConPatOut - { pat_con = (dL->L _ (PatSynCon _pat)) }) + { pat_con = L _ (PatSynCon _pat) }) = False -- Conservative - go (ConPatOut{}) = panic "ConPatOut:Impossible Match" -- due to #15884 go (LitPat {}) = False go (NPat {}) = False go (NPlusKPat {}) = False @@ -790,8 +789,8 @@ conPatNeedsParens p = go -- | @'parenthesizePat' p pat@ checks if @'patNeedsParens' p pat@ is true, and -- if so, surrounds @pat@ with a 'ParPat'. Otherwise, it simply returns @pat@. parenthesizePat :: PprPrec -> LPat (GhcPass p) -> LPat (GhcPass p) -parenthesizePat p lpat@(dL->L loc pat) - | patNeedsParens p pat = cL loc (ParPat noExtField lpat) +parenthesizePat p lpat@(L loc pat) + | patNeedsParens p pat = L loc (ParPat noExtField lpat) | otherwise = lpat {- |