[GHC] #7887: panic when playing with pipes
GHC
cvs-ghc at haskell.org
Sat May 4 18:43:57 CEST 2013
#7887: panic when playing with pipes
-----------------------------+----------------------------------------------
Reporter: bfr | Owner:
Type: bug | Status: new
Priority: normal | Component: Compiler
Version: 7.6.3 | Keywords:
Os: Unknown/Multiple | Architecture: Unknown/Multiple
Failure: None/Unknown | Blockedby:
Blocking: | Related:
-----------------------------+----------------------------------------------
I am playing around with pipes-3.2.0 using ghc-6.7.3. I load this code in
ghci:
"""
import Control.Proxy
fork :: (Monad m, Proxy p1, Proxy p2, Proxy p3)
=> () -> Consumer p1 a (Producer p2 a (Producer p3 a m)) r
fork () = runIdentityP . hoist (runIdentityP . hoist runIdentityP) $
forever $ do
a <- request () -- Request from the 'Consumer'
lift $ respond a -- Send to the outer 'Producer'
lift $ lift $ respond a -- Send to the inner 'Producer'
test :: (Proxy p) => () -> Producer p Int IO r
test () = runIdentityP $ forever $ do
respond 1
"""
then I type
*Main> :t hoist (hoist lift) $ test
<interactive>:1:1: Warning:
Could not deduce (Monad ()) arising from a use of `hoist'
from the context (Monad m, MonadTrans t1, Proxy p, MFunctor t)
bound by the inferred type of
it :: (Monad m, MonadTrans t1, Proxy p, MFunctor t) =>
t (t1 m) -> Producer p Int IO r
at Top level
Possible fix: add an instance declaration for (Monad ())
In the expression: hoist (hoist lift)
In the expression: hoist (hoist lift) $ test
<interactive>:1:1: Warning:
Could not deduce (MFunctor (->)) arising from a use of `hoist'
from the context (Monad m, MonadTrans t1, Proxy p, MFunctor t)
bound by the inferred type of
it :: (Monad m, MonadTrans t1, Proxy p, MFunctor t) =>
t (t1 m) -> Producer p Int IO r
at Top level
Possible fix: add an instance declaration for (MFunctor (->))
In the expression: hoist (hoist lift)
In the expression: hoist (hoist lift) $ test
<interactive>:1:8: Warning:ghc: panic! (the 'impossible' happened)
(GHC version 7.6.3 for x86_64-unknown-linux):
kindFunResult
<<details unavailable>>
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7887>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list