Stack Overflow Panic
Simon Peyton-Jones
simonpj at microsoft.com
Tue Mar 5 00:42:55 EST 2002
Ahem. Yes, that's a bug all right. How embarassing.
I've fixed it, but won't be able to commit the fix till I get
back at the end of this week. Meanwhile, use 'data' instead of
'newtype' as a workaround.
Thanks for reporting this, and for boiling it down to something small.
Simon
| -----Original Message-----
| From: Wolfgang Thaller [mailto:wolfgang.thaller at gmx.net]
| Sent: 02 March 2002 22:20
| To: glasgow-haskell-bugs at haskell.org
| Subject: Stack Overflow Panic
|
|
| I've checked out GHC 5.03 from CVS a few days ago
| and compiled it on my MacOS X machine. The compiler panics
| with stack overflow on the following file:
|
| \begin{code}
| module CrashingMonad where
|
| data PPResult a = PPSuccess a PPState
| newtype PP a = PP (PPState -> PPResult a)
|
| data PPState = PPState (PP ())
|
| instance Monad PP where
|
| a >>= b = a `ppThen` b
|
| return x = ppReturn x
|
| ppReturn x = undefined -- PP (\state -> PPSuccess x state)
|
| (PP a) `ppThen` b =
| PP (\state -> case (a state) of
|
| PPSuccess x state' ->
| undefined -- case (b x) of PP b' -> b' state'
| )
|
|
| test = ppReturn 1 `ppThen`
| undefined -- ppReturn
| \end{code}
|
| I don't think it's a problem with my MacOS X port,
| after all it compiled the library and some other modules of
| my program without problems. Increasing the maximum stack
| size only delays the panic. If I simplify the above module
| any further, the panic goes away. (Replacing the "undefined"s
| by the commented out expressions changes nothing).
|
| There is no problem with ghc-5.02.2 on Intel. I cannot try it
| out on ghc-5.03/intel due to lack of disk space.
|
| Any Ideas?
|
|
| Wolfgang Thaller
|
| --
| GMX - Die Kommunikationsplattform im Internet. http://www.gmx.net
|
| _______________________________________________
| Glasgow-haskell-bugs mailing list
| Glasgow-haskell-bugs at haskell.org
| http://www.haskell.org/mailman/listinfo/glasgow-| haskell-bugs
|
More information about the Glasgow-haskell-bugs
mailing list