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 :) >> >
_______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users