Wolfgang Jeltsch pushed to branch wip/jeltsch/control-monad-zip-to-base at Glasgow Haskell Compiler / GHC Commits: 02490385 by Wolfgang Jeltsch at 2026-02-18T16:53:00+02:00 Move the implementation of `Control.Monad.Zip` to `base` - - - - - 7 changed files: - libraries/base/src/Control/Monad/Zip.hs - libraries/ghc-internal/ghc-internal.cabal.in - − libraries/ghc-internal/src/GHC/Internal/Control/Monad/Zip.hs - testsuite/tests/interface-stability/base-exports.stdout - testsuite/tests/interface-stability/base-exports.stdout-javascript-unknown-ghcjs - testsuite/tests/interface-stability/base-exports.stdout-mingw32 - testsuite/tests/interface-stability/base-exports.stdout-ws-32 Changes: ===================================== libraries/base/src/Control/Monad/Zip.hs ===================================== @@ -18,4 +18,127 @@ module Control.Monad.Zip ( MonadZip(..) ) where -import GHC.Internal.Control.Monad.Zip(MonadZip(..)) +import GHC.Internal.Control.Monad (liftM, liftM2, Monad(..)) +import GHC.Internal.Data.Functor.Identity +import qualified GHC.Internal.Data.Functor +import GHC.Internal.Data.Monoid +import GHC.Internal.Data.NonEmpty ( NonEmpty(..) ) +import GHC.Internal.Data.Ord ( Down(..) ) +import GHC.Internal.Data.Proxy +--import qualified Data.List.NonEmpty as NE +import GHC.Internal.Generics +import qualified GHC.Internal.Data.List.NonEmpty as NE +import qualified GHC.Internal.Data.List as List +import GHC.Internal.Data.Maybe +import GHC.Internal.Data.Tuple +--import Prelude + +-- | Instances should satisfy the laws: +-- +-- [Naturality] +-- +-- @'liftM' (f 'Control.Arrow.***' g) ('mzip' ma mb) +-- = 'mzip' ('liftM' f ma) ('liftM' g mb)@ +-- +-- [Information Preservation] +-- +-- @'liftM' ('Prelude.const' ()) ma = 'liftM' ('Prelude.const' ()) mb@ +-- implies +-- @'munzip' ('mzip' ma mb) = (ma, mb)@ +-- +class Monad m => MonadZip m where + {-# MINIMAL mzip | mzipWith #-} + + mzip :: m a -> m b -> m (a,b) + mzip = mzipWith (,) + + mzipWith :: (a -> b -> c) -> m a -> m b -> m c + mzipWith f ma mb = liftM (uncurry f) (mzip ma mb) + + munzip :: m (a,b) -> (m a, m b) + munzip mab = (liftM fst mab, liftM snd mab) + -- munzip is a member of the class because sometimes + -- you can implement it more efficiently than the + -- above default code. See #4370 comment by giorgidze + +-- | @since 4.3.1.0 +instance MonadZip [] where + mzip = List.zip + mzipWith = List.zipWith + munzip = List.unzip + +-- | @since 4.9.0.0 +instance MonadZip NonEmpty where + mzip = NE.zip + mzipWith = NE.zipWith + munzip = GHC.Internal.Data.Functor.unzip + +-- | @since 4.8.0.0 +instance MonadZip Identity where + mzipWith = liftM2 + munzip (Identity (a, b)) = (Identity a, Identity b) + +-- | @since 4.15.0.0 +instance MonadZip Solo where + mzipWith = liftM2 + munzip (MkSolo (a, b)) = (MkSolo a, MkSolo b) + +-- | @since 4.8.0.0 +instance MonadZip Dual where + -- Cannot use coerce, it's unsafe + mzipWith = liftM2 + +-- | @since 4.8.0.0 +instance MonadZip Sum where + mzipWith = liftM2 + +-- | @since 4.8.0.0 +instance MonadZip Product where + mzipWith = liftM2 + +-- | @since 4.8.0.0 +instance MonadZip Maybe where + mzipWith = liftM2 + +-- | @since 4.8.0.0 +instance MonadZip First where + mzipWith = liftM2 + +-- | @since 4.8.0.0 +instance MonadZip Last where + mzipWith = liftM2 + +-- | @since 4.8.0.0 +instance MonadZip f => MonadZip (Alt f) where + mzipWith f (Alt ma) (Alt mb) = Alt (mzipWith f ma mb) + +-- | @since 4.9.0.0 +instance MonadZip Proxy where + mzipWith _ _ _ = Proxy + +-- Instances for GHC.Generics +-- | @since 4.9.0.0 +instance MonadZip U1 where + mzipWith _ _ _ = U1 + +-- | @since 4.9.0.0 +instance MonadZip Par1 where + mzipWith = liftM2 + +-- | @since 4.9.0.0 +instance MonadZip f => MonadZip (Rec1 f) where + mzipWith f (Rec1 fa) (Rec1 fb) = Rec1 (mzipWith f fa fb) + +-- | @since 4.9.0.0 +instance MonadZip f => MonadZip (M1 i c f) where + mzipWith f (M1 fa) (M1 fb) = M1 (mzipWith f fa fb) + +-- | @since 4.9.0.0 +instance (MonadZip f, MonadZip g) => MonadZip (f :*: g) where + mzipWith f (x1 :*: y1) (x2 :*: y2) = mzipWith f x1 x2 :*: mzipWith f y1 y2 + +-- instances for GHC.Internal.Data.Ord + +-- | @since 4.12.0.0 +instance MonadZip Down where + mzipWith = liftM2 ===================================== libraries/ghc-internal/ghc-internal.cabal.in ===================================== @@ -135,7 +135,6 @@ Library GHC.Internal.Control.Monad.Fix GHC.Internal.Control.Monad.IO.Class GHC.Internal.Control.Monad.ST - GHC.Internal.Control.Monad.Zip GHC.Internal.Control.Monad.ST.Lazy GHC.Internal.Control.Monad.ST.Imp GHC.Internal.Control.Monad.ST.Lazy.Imp ===================================== libraries/ghc-internal/src/GHC/Internal/Control/Monad/Zip.hs deleted ===================================== @@ -1,144 +0,0 @@ -{-# LANGUAGE Trustworthy #-} -{-# LANGUAGE TypeOperators #-} - ------------------------------------------------------------------------------ --- | --- Module : Control.Monad.Zip --- Copyright : (c) Nils Schweinsberg 2011, --- (c) George Giorgidze 2011 --- (c) University Tuebingen 2011 --- License : BSD-style (see the file libraries/base/LICENSE) --- Maintainer : libraries@haskell.org --- Stability : stable --- Portability : portable --- --- Monadic zipping (used for monad comprehensions) --- ------------------------------------------------------------------------------ - -module GHC.Internal.Control.Monad.Zip ( MonadZip(..) ) where - -import GHC.Internal.Control.Monad (liftM, liftM2, Monad(..)) -import GHC.Internal.Data.Functor.Identity -import qualified GHC.Internal.Data.Functor -import GHC.Internal.Data.Monoid -import GHC.Internal.Data.NonEmpty ( NonEmpty(..) ) -import GHC.Internal.Data.Ord ( Down(..) ) -import GHC.Internal.Data.Proxy ---import qualified Data.List.NonEmpty as NE -import GHC.Internal.Generics -import qualified GHC.Internal.Data.List.NonEmpty as NE -import qualified GHC.Internal.Data.List as List -import GHC.Internal.Data.Maybe -import GHC.Internal.Data.Tuple ---import Prelude - --- | Instances should satisfy the laws: --- --- [Naturality] --- --- @'liftM' (f 'Control.Arrow.***' g) ('mzip' ma mb) --- = 'mzip' ('liftM' f ma) ('liftM' g mb)@ --- --- [Information Preservation] --- --- @'liftM' ('Prelude.const' ()) ma = 'liftM' ('Prelude.const' ()) mb@ --- implies --- @'munzip' ('mzip' ma mb) = (ma, mb)@ --- -class Monad m => MonadZip m where - {-# MINIMAL mzip | mzipWith #-} - - mzip :: m a -> m b -> m (a,b) - mzip = mzipWith (,) - - mzipWith :: (a -> b -> c) -> m a -> m b -> m c - mzipWith f ma mb = liftM (uncurry f) (mzip ma mb) - - munzip :: m (a,b) -> (m a, m b) - munzip mab = (liftM fst mab, liftM snd mab) - -- munzip is a member of the class because sometimes - -- you can implement it more efficiently than the - -- above default code. See #4370 comment by giorgidze - --- | @since 4.3.1.0 -instance MonadZip [] where - mzip = List.zip - mzipWith = List.zipWith - munzip = List.unzip - --- | @since 4.9.0.0 -instance MonadZip NonEmpty where - mzip = NE.zip - mzipWith = NE.zipWith - munzip = GHC.Internal.Data.Functor.unzip - --- | @since 4.8.0.0 -instance MonadZip Identity where - mzipWith = liftM2 - munzip (Identity (a, b)) = (Identity a, Identity b) - --- | @since 4.15.0.0 -instance MonadZip Solo where - mzipWith = liftM2 - munzip (MkSolo (a, b)) = (MkSolo a, MkSolo b) - --- | @since 4.8.0.0 -instance MonadZip Dual where - -- Cannot use coerce, it's unsafe - mzipWith = liftM2 - --- | @since 4.8.0.0 -instance MonadZip Sum where - mzipWith = liftM2 - --- | @since 4.8.0.0 -instance MonadZip Product where - mzipWith = liftM2 - --- | @since 4.8.0.0 -instance MonadZip Maybe where - mzipWith = liftM2 - --- | @since 4.8.0.0 -instance MonadZip First where - mzipWith = liftM2 - --- | @since 4.8.0.0 -instance MonadZip Last where - mzipWith = liftM2 - --- | @since 4.8.0.0 -instance MonadZip f => MonadZip (Alt f) where - mzipWith f (Alt ma) (Alt mb) = Alt (mzipWith f ma mb) - --- | @since 4.9.0.0 -instance MonadZip Proxy where - mzipWith _ _ _ = Proxy - --- Instances for GHC.Generics --- | @since 4.9.0.0 -instance MonadZip U1 where - mzipWith _ _ _ = U1 - --- | @since 4.9.0.0 -instance MonadZip Par1 where - mzipWith = liftM2 - --- | @since 4.9.0.0 -instance MonadZip f => MonadZip (Rec1 f) where - mzipWith f (Rec1 fa) (Rec1 fb) = Rec1 (mzipWith f fa fb) - --- | @since 4.9.0.0 -instance MonadZip f => MonadZip (M1 i c f) where - mzipWith f (M1 fa) (M1 fb) = M1 (mzipWith f fa fb) - --- | @since 4.9.0.0 -instance (MonadZip f, MonadZip g) => MonadZip (f :*: g) where - mzipWith f (x1 :*: y1) (x2 :*: y2) = mzipWith f x1 x2 :*: mzipWith f y1 y2 - --- instances for GHC.Internal.Data.Ord - --- | @since 4.12.0.0 -instance MonadZip Down where - mzipWith = liftM2 ===================================== testsuite/tests/interface-stability/base-exports.stdout ===================================== @@ -10532,6 +10532,26 @@ module Unsafe.Coerce where -- Instances: +instance forall (f :: * -> *) (g :: * -> *). (Control.Monad.Zip.MonadZip f, Control.Monad.Zip.MonadZip g) => Control.Monad.Zip.MonadZip (f GHC.Internal.Generics.:*: g) -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Data.Semigroup.Internal.Alt f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Ord.Down -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Dual -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.First -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Functor.Identity.Identity -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.Last -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip [] -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *) i (c :: GHC.Internal.Generics.Meta). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Generics.M1 i c f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Maybe.Maybe -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Base.NonEmpty -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Generics.Par1 -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Product -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Proxy.Proxy -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Generics.Rec1 f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip Solo -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Sum -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Generics.U1 -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip Data.Complex.Complex -- Defined in ‘Data.Complex’ +instance [safe] forall (f :: * -> *) (g :: * -> *). (Control.Monad.Zip.MonadZip f, Control.Monad.Zip.MonadZip g) => Control.Monad.Zip.MonadZip (Data.Functor.Product.Product f g) -- Defined in ‘Data.Functor.Product’ instance [safe] Data.Bifoldable.Bifoldable GHC.Internal.Data.Functor.Const.Const -- Defined in ‘Data.Bifoldable’ instance [safe] Data.Bifoldable.Bifoldable GHC.Internal.Data.Either.Either -- Defined in ‘Data.Bifoldable’ instance [safe] forall i. Data.Bifoldable.Bifoldable (GHC.Internal.Generics.K1 i) -- Defined in ‘Data.Bifoldable’ @@ -11574,26 +11594,6 @@ instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Last -- Defined instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Max -- Defined in ‘Data.Semigroup’ instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Min -- Defined in ‘Data.Semigroup’ instance GHC.Internal.Control.Monad.IO.Class.MonadIO GHC.Internal.Types.IO -- Defined in ‘GHC.Internal.Control.Monad.IO.Class’ -instance forall (f :: * -> *) (g :: * -> *). (GHC.Internal.Control.Monad.Zip.MonadZip f, GHC.Internal.Control.Monad.Zip.MonadZip g) => GHC.Internal.Control.Monad.Zip.MonadZip (f GHC.Internal.Generics.:*: g) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Data.Semigroup.Internal.Alt f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Ord.Down -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Dual -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.First -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Functor.Identity.Identity -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.Last -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip [] -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *) i (c :: GHC.Internal.Generics.Meta). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Generics.M1 i c f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Maybe.Maybe -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Base.NonEmpty -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Generics.Par1 -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Product -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Proxy.Proxy -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Generics.Rec1 f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip Solo -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Sum -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Generics.U1 -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip Data.Complex.Complex -- Defined in ‘Data.Complex’ -instance [safe] forall (f :: * -> *) (g :: * -> *). (GHC.Internal.Control.Monad.Zip.MonadZip f, GHC.Internal.Control.Monad.Zip.MonadZip g) => GHC.Internal.Control.Monad.Zip.MonadZip (Data.Functor.Product.Product f g) -- Defined in ‘Data.Functor.Product’ instance forall (a :: * -> * -> *) b c. (ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable a, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable b, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable c, GHC.Internal.Data.Data.Data (a b c)) => GHC.Internal.Data.Data.Data (Control.Applicative.WrappedArrow a b c) -- Defined in ‘Control.Applicative’ instance forall (m :: * -> *) a. (ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable m, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable a, GHC.Internal.Data.Data.Data (m a)) => GHC.Internal.Data.Data.Data (Control.Applicative.WrappedMonad m a) -- Defined in ‘Control.Applicative’ instance GHC.Internal.Data.Data.Data Data.Array.Byte.ByteArray -- Defined in ‘Data.Array.Byte’ ===================================== testsuite/tests/interface-stability/base-exports.stdout-javascript-unknown-ghcjs ===================================== @@ -10570,6 +10570,26 @@ module Unsafe.Coerce where -- Instances: +instance forall (f :: * -> *) (g :: * -> *). (Control.Monad.Zip.MonadZip f, Control.Monad.Zip.MonadZip g) => Control.Monad.Zip.MonadZip (f GHC.Internal.Generics.:*: g) -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Data.Semigroup.Internal.Alt f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Ord.Down -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Dual -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.First -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Functor.Identity.Identity -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.Last -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip [] -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *) i (c :: GHC.Internal.Generics.Meta). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Generics.M1 i c f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Maybe.Maybe -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Base.NonEmpty -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Generics.Par1 -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Product -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Proxy.Proxy -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Generics.Rec1 f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip Solo -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Sum -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Generics.U1 -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip Data.Complex.Complex -- Defined in ‘Data.Complex’ +instance [safe] forall (f :: * -> *) (g :: * -> *). (Control.Monad.Zip.MonadZip f, Control.Monad.Zip.MonadZip g) => Control.Monad.Zip.MonadZip (Data.Functor.Product.Product f g) -- Defined in ‘Data.Functor.Product’ instance [safe] Data.Bifoldable.Bifoldable GHC.Internal.Data.Functor.Const.Const -- Defined in ‘Data.Bifoldable’ instance [safe] Data.Bifoldable.Bifoldable GHC.Internal.Data.Either.Either -- Defined in ‘Data.Bifoldable’ instance [safe] forall i. Data.Bifoldable.Bifoldable (GHC.Internal.Generics.K1 i) -- Defined in ‘Data.Bifoldable’ @@ -11601,26 +11621,6 @@ instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Last -- Defined instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Max -- Defined in ‘Data.Semigroup’ instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Min -- Defined in ‘Data.Semigroup’ instance GHC.Internal.Control.Monad.IO.Class.MonadIO GHC.Internal.Types.IO -- Defined in ‘GHC.Internal.Control.Monad.IO.Class’ -instance forall (f :: * -> *) (g :: * -> *). (GHC.Internal.Control.Monad.Zip.MonadZip f, GHC.Internal.Control.Monad.Zip.MonadZip g) => GHC.Internal.Control.Monad.Zip.MonadZip (f GHC.Internal.Generics.:*: g) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Data.Semigroup.Internal.Alt f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Ord.Down -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Dual -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.First -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Functor.Identity.Identity -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.Last -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip [] -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *) i (c :: GHC.Internal.Generics.Meta). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Generics.M1 i c f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Maybe.Maybe -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Base.NonEmpty -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Generics.Par1 -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Product -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Proxy.Proxy -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Generics.Rec1 f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip Solo -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Sum -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Generics.U1 -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip Data.Complex.Complex -- Defined in ‘Data.Complex’ -instance [safe] forall (f :: * -> *) (g :: * -> *). (GHC.Internal.Control.Monad.Zip.MonadZip f, GHC.Internal.Control.Monad.Zip.MonadZip g) => GHC.Internal.Control.Monad.Zip.MonadZip (Data.Functor.Product.Product f g) -- Defined in ‘Data.Functor.Product’ instance forall (a :: * -> * -> *) b c. (ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable a, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable b, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable c, GHC.Internal.Data.Data.Data (a b c)) => GHC.Internal.Data.Data.Data (Control.Applicative.WrappedArrow a b c) -- Defined in ‘Control.Applicative’ instance forall (m :: * -> *) a. (ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable m, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable a, GHC.Internal.Data.Data.Data (m a)) => GHC.Internal.Data.Data.Data (Control.Applicative.WrappedMonad m a) -- Defined in ‘Control.Applicative’ instance GHC.Internal.Data.Data.Data Data.Array.Byte.ByteArray -- Defined in ‘Data.Array.Byte’ ===================================== testsuite/tests/interface-stability/base-exports.stdout-mingw32 ===================================== @@ -10794,6 +10794,26 @@ module Unsafe.Coerce where -- Instances: +instance forall (f :: * -> *) (g :: * -> *). (Control.Monad.Zip.MonadZip f, Control.Monad.Zip.MonadZip g) => Control.Monad.Zip.MonadZip (f GHC.Internal.Generics.:*: g) -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Data.Semigroup.Internal.Alt f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Ord.Down -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Dual -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.First -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Functor.Identity.Identity -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.Last -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip [] -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *) i (c :: GHC.Internal.Generics.Meta). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Generics.M1 i c f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Maybe.Maybe -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Base.NonEmpty -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Generics.Par1 -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Product -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Proxy.Proxy -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Generics.Rec1 f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip Solo -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Sum -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Generics.U1 -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip Data.Complex.Complex -- Defined in ‘Data.Complex’ +instance [safe] forall (f :: * -> *) (g :: * -> *). (Control.Monad.Zip.MonadZip f, Control.Monad.Zip.MonadZip g) => Control.Monad.Zip.MonadZip (Data.Functor.Product.Product f g) -- Defined in ‘Data.Functor.Product’ instance [safe] Data.Bifoldable.Bifoldable GHC.Internal.Data.Functor.Const.Const -- Defined in ‘Data.Bifoldable’ instance [safe] Data.Bifoldable.Bifoldable GHC.Internal.Data.Either.Either -- Defined in ‘Data.Bifoldable’ instance [safe] forall i. Data.Bifoldable.Bifoldable (GHC.Internal.Generics.K1 i) -- Defined in ‘Data.Bifoldable’ @@ -11832,26 +11852,6 @@ instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Last -- Defined instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Max -- Defined in ‘Data.Semigroup’ instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Min -- Defined in ‘Data.Semigroup’ instance GHC.Internal.Control.Monad.IO.Class.MonadIO GHC.Internal.Types.IO -- Defined in ‘GHC.Internal.Control.Monad.IO.Class’ -instance forall (f :: * -> *) (g :: * -> *). (GHC.Internal.Control.Monad.Zip.MonadZip f, GHC.Internal.Control.Monad.Zip.MonadZip g) => GHC.Internal.Control.Monad.Zip.MonadZip (f GHC.Internal.Generics.:*: g) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Data.Semigroup.Internal.Alt f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Ord.Down -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Dual -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.First -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Functor.Identity.Identity -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.Last -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip [] -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *) i (c :: GHC.Internal.Generics.Meta). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Generics.M1 i c f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Maybe.Maybe -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Base.NonEmpty -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Generics.Par1 -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Product -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Proxy.Proxy -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Generics.Rec1 f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip Solo -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Sum -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Generics.U1 -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip Data.Complex.Complex -- Defined in ‘Data.Complex’ -instance [safe] forall (f :: * -> *) (g :: * -> *). (GHC.Internal.Control.Monad.Zip.MonadZip f, GHC.Internal.Control.Monad.Zip.MonadZip g) => GHC.Internal.Control.Monad.Zip.MonadZip (Data.Functor.Product.Product f g) -- Defined in ‘Data.Functor.Product’ instance forall (a :: * -> * -> *) b c. (ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable a, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable b, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable c, GHC.Internal.Data.Data.Data (a b c)) => GHC.Internal.Data.Data.Data (Control.Applicative.WrappedArrow a b c) -- Defined in ‘Control.Applicative’ instance forall (m :: * -> *) a. (ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable m, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable a, GHC.Internal.Data.Data.Data (m a)) => GHC.Internal.Data.Data.Data (Control.Applicative.WrappedMonad m a) -- Defined in ‘Control.Applicative’ instance GHC.Internal.Data.Data.Data Data.Array.Byte.ByteArray -- Defined in ‘Data.Array.Byte’ ===================================== testsuite/tests/interface-stability/base-exports.stdout-ws-32 ===================================== @@ -10532,6 +10532,26 @@ module Unsafe.Coerce where -- Instances: +instance forall (f :: * -> *) (g :: * -> *). (Control.Monad.Zip.MonadZip f, Control.Monad.Zip.MonadZip g) => Control.Monad.Zip.MonadZip (f GHC.Internal.Generics.:*: g) -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Data.Semigroup.Internal.Alt f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Ord.Down -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Dual -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.First -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Functor.Identity.Identity -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.Last -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip [] -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *) i (c :: GHC.Internal.Generics.Meta). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Generics.M1 i c f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Maybe.Maybe -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Base.NonEmpty -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Generics.Par1 -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Product -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Proxy.Proxy -- Defined in ‘Control.Monad.Zip’ +instance forall (f :: * -> *). Control.Monad.Zip.MonadZip f => Control.Monad.Zip.MonadZip (GHC.Internal.Generics.Rec1 f) -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip Solo -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Sum -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip GHC.Internal.Generics.U1 -- Defined in ‘Control.Monad.Zip’ +instance Control.Monad.Zip.MonadZip Data.Complex.Complex -- Defined in ‘Data.Complex’ +instance [safe] forall (f :: * -> *) (g :: * -> *). (Control.Monad.Zip.MonadZip f, Control.Monad.Zip.MonadZip g) => Control.Monad.Zip.MonadZip (Data.Functor.Product.Product f g) -- Defined in ‘Data.Functor.Product’ instance [safe] Data.Bifoldable.Bifoldable GHC.Internal.Data.Functor.Const.Const -- Defined in ‘Data.Bifoldable’ instance [safe] Data.Bifoldable.Bifoldable GHC.Internal.Data.Either.Either -- Defined in ‘Data.Bifoldable’ instance [safe] forall i. Data.Bifoldable.Bifoldable (GHC.Internal.Generics.K1 i) -- Defined in ‘Data.Bifoldable’ @@ -11574,26 +11594,6 @@ instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Last -- Defined instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Max -- Defined in ‘Data.Semigroup’ instance GHC.Internal.Control.Monad.Fix.MonadFix Data.Semigroup.Min -- Defined in ‘Data.Semigroup’ instance GHC.Internal.Control.Monad.IO.Class.MonadIO GHC.Internal.Types.IO -- Defined in ‘GHC.Internal.Control.Monad.IO.Class’ -instance forall (f :: * -> *) (g :: * -> *). (GHC.Internal.Control.Monad.Zip.MonadZip f, GHC.Internal.Control.Monad.Zip.MonadZip g) => GHC.Internal.Control.Monad.Zip.MonadZip (f GHC.Internal.Generics.:*: g) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Data.Semigroup.Internal.Alt f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Ord.Down -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Dual -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.First -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Functor.Identity.Identity -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Monoid.Last -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip [] -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *) i (c :: GHC.Internal.Generics.Meta). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Generics.M1 i c f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Maybe.Maybe -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Base.NonEmpty -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Generics.Par1 -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Product -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Proxy.Proxy -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance forall (f :: * -> *). GHC.Internal.Control.Monad.Zip.MonadZip f => GHC.Internal.Control.Monad.Zip.MonadZip (GHC.Internal.Generics.Rec1 f) -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip Solo -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Data.Semigroup.Internal.Sum -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip GHC.Internal.Generics.U1 -- Defined in ‘GHC.Internal.Control.Monad.Zip’ -instance GHC.Internal.Control.Monad.Zip.MonadZip Data.Complex.Complex -- Defined in ‘Data.Complex’ -instance [safe] forall (f :: * -> *) (g :: * -> *). (GHC.Internal.Control.Monad.Zip.MonadZip f, GHC.Internal.Control.Monad.Zip.MonadZip g) => GHC.Internal.Control.Monad.Zip.MonadZip (Data.Functor.Product.Product f g) -- Defined in ‘Data.Functor.Product’ instance forall (a :: * -> * -> *) b c. (ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable a, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable b, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable c, GHC.Internal.Data.Data.Data (a b c)) => GHC.Internal.Data.Data.Data (Control.Applicative.WrappedArrow a b c) -- Defined in ‘Control.Applicative’ instance forall (m :: * -> *) a. (ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable m, ghc-internal-9.1500.0:GHC.Internal.Data.Typeable.Internal.Typeable a, GHC.Internal.Data.Data.Data (m a)) => GHC.Internal.Data.Data.Data (Control.Applicative.WrappedMonad m a) -- Defined in ‘Control.Applicative’ instance GHC.Internal.Data.Data.Data Data.Array.Byte.ByteArray -- Defined in ‘Data.Array.Byte’ View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/0249038508def6edcc5a2e79d471f5e6... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/0249038508def6edcc5a2e79d471f5e6... You're receiving this email because of your account on gitlab.haskell.org.
participants (1)
-
Wolfgang Jeltsch (@jeltsch)