diff options
Diffstat (limited to 'compiler/GHC/Tc/Types/Origin.hs')
-rw-r--r-- | compiler/GHC/Tc/Types/Origin.hs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/GHC/Tc/Types/Origin.hs b/compiler/GHC/Tc/Types/Origin.hs index 1b7d4de3fd..556d0a4af0 100644 --- a/compiler/GHC/Tc/Types/Origin.hs +++ b/compiler/GHC/Tc/Types/Origin.hs @@ -35,7 +35,7 @@ module GHC.Tc.Types.Origin ( -- * Arrow command origin FRRArrowContext(..), pprFRRArrowContext, - ExpectedFunTyOrigin(..), pprExpectedFunTyOrigin, pprExpectedFunTyHerald, + ExpectedFunTyOrigin(..), extractExpr, pprExpectedFunTyOrigin, pprExpectedFunTyHerald, ) where @@ -1337,6 +1337,12 @@ data ExpectedFunTyOrigin !(HsExpr GhcRn) -- ^ the entire lambda-case expression +extractExpr :: ExpectedFunTyOrigin -> HsExpr GhcRn +extractExpr (ExpectedFunTySyntaxOp _ e) = e +extractExpr (ExpectedFunTyViewPat e) = e +extractExpr (ExpectedFunTyLamCase _ e) = e +extractExpr _ = panic "no expr" + pprExpectedFunTyOrigin :: ExpectedFunTyOrigin -> Int -- ^ argument position (starting at 1) -> SDoc |