summaryrefslogtreecommitdiff
path: root/compiler/GHC/Tc/Errors/Ppr.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/GHC/Tc/Errors/Ppr.hs')
-rw-r--r--compiler/GHC/Tc/Errors/Ppr.hs13
1 files changed, 10 insertions, 3 deletions
diff --git a/compiler/GHC/Tc/Errors/Ppr.hs b/compiler/GHC/Tc/Errors/Ppr.hs
index b17c1c050b..1d14a52bce 100644
--- a/compiler/GHC/Tc/Errors/Ppr.hs
+++ b/compiler/GHC/Tc/Errors/Ppr.hs
@@ -1246,9 +1246,12 @@ instance Diagnostic TcRnMessage where
False -> text (TH.pprint item))
TcRnReportCustomQuasiError _ msg -> mkSimpleDecorated $ text msg
TcRnInterfaceLookupError _ sdoc -> mkSimpleDecorated sdoc
- TcRnOrPatBindsVariables pat vars -> case vars of
- True -> mkSimpleDecorated $ text "An or-pattern may not bind (type) variables:" <+> ppr pat
- False -> mkSimpleDecorated $ text "An or-pattern may not bind (type) variables nor type class or equality constraints:" <+> ppr pat
+ TcRnOrPatBindsVariables pat
+ -> mkSimpleDecorated $
+ text "An or-pattern may not bind variables:" <+> ppr pat
+ TcRnOrPatHasVisibleTyApps pat
+ -> mkSimpleDecorated $
+ text "An or-pattern may not contain visible type applications:" <+> ppr pat
TcRnUnsatisfiedMinimalDef mindef
-> mkSimpleDecorated $
vcat [text "No explicit implementation for"
@@ -2095,6 +2098,8 @@ instance Diagnostic TcRnMessage where
-> ErrorWithoutFlag
TcRnOrPatBindsVariables{}
-> ErrorWithoutFlag
+ TcRnOrPatHasVisibleTyApps{}
+ -> ErrorWithoutFlag
TcRnUnsatisfiedMinimalDef{}
-> WarningWithFlag (Opt_WarnMissingMethods)
TcRnMisplacedInstSig{}
@@ -2673,6 +2678,8 @@ instance Diagnostic TcRnMessage where
-> noHints
TcRnOrPatBindsVariables{}
-> noHints
+ TcRnOrPatHasVisibleTyApps{}
+ -> noHints
TcRnUnsatisfiedMinimalDef{}
-> noHints
TcRnMisplacedInstSig{}