GHC 7.0.1 (or very strange dimensional-0.8.0.1) bug

Pavel Perikov perikov at gmail.com
Wed Jan 26 06:37:09 CET 2011


Hi, Jeremy. Probably I didn't read your message carefully enough. Sorry for that.

In my case there's no recursive code sqrt calls nroot that calls Prelude.nroot and Prelude./. Does that qualify? 

pavel


>> On 25.01.2011, at 22:35, Jeremy Shaw wrote:
>> 
>>> There is a weird type-checking bug in 7.0.1 that causes loopy behavior:
>>> 
>>> http://hackage.haskell.org/trac/ghc/ticket/4809
>>> 
>>> Not sure if that is what is happening to you or not. Though in my experience it did not actually print <<loop>>, it just hung.



> My understanding of the bug is that the type-checker failed to properly detect and handle super classes in recursive dictionaries. As a result the dictionaries call each other in a loop and nothing ever happens..
> You mentioned that the 'let' trick sometimes fixed things. In the code I had trouble with, subtle changes would make the code magically start working. For example, changing *unused* functions in 'where' clauses would cause code to suddenly start working :) 

> 
> Anyway, since you are certain your issue is not related, you can just ignore my message. 


> 
> - jeremy
> 
> On Jan 25, 2011, at 1:43 PM, Pavel Perikov wrote:
> 
>> It is NOT type checking bug. It causes Rec {} in core and _|_ in runtime :)
>> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/glasgow-haskell-users/attachments/20110126/3cb70b9b/attachment-0001.htm>


More information about the Glasgow-haskell-users mailing list