#5022: Arrow desugarer generates Core Lint error
-------------------------------+--------------------------------------------
    Reporter:  serpentologist  |       Owner:  ross        
        Type:  bug             |      Status:  new         
    Priority:  high            |   Milestone:  7.4.1       
   Component:  Compiler        |     Version:  7.0.2       
    Keywords:  infinite loop   |          Os:  Linux       
Architecture:  x86_64 (amd64)  |     Failure:  None/Unknown
  Difficulty:                  |    Testcase:              
   Blockedby:                  |    Blocking:              
     Related:                  |  
-------------------------------+--------------------------------------------

Comment(by ross):

 A simpler example of the same bug:
 {{{
 module T5022 (
   pIterate
 ) where

 import Prelude hiding ( init )

 returnA :: b -> b
 returnA = id

 ------------
 newtype State s a = State { unState :: [a] }

 ------------
 pIterate :: a -> [a]
 pIterate =
     proc x -> do
       rec
         as <- unState -< s
         let s = State (x:as)
       returnA -< as
 }}}
 s gets a polymorphic type, but for some reason the constructor of the
 tuple for feedback in the rec expects a monotype.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5022#comment:16>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler

_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to