On 03/03/2010 12:37, Yitzchak Gale wrote:
Jeremy Shaw wrote:
I would still vote for that error in the 'worst ghc error message
contest'...

I wrote:
Can't we add something like "(Is there more than one
Prelude in your path?)" to the message for Prelude?

Simon Marlow wrote:
So I could add a warning ("Warning: this Prelude module is shadowing the
real Prelude", or something), but then we'd need a new flag to turn off the
warning if shadowing the Prelude is what you're really trying to do, and
that sounds like an awful lot of bother to fix a very rare corner case.  Or
can anyone think of a better way to handle this?

I was suggesting that whenever the Prelude fails to load,
the error message should contain that hint.

hmm, I'll think about that. Is it not enough to see a compilation error pointing to the file Prelude.hs?

We'd also like to help rescue people who get weird behavior
when, unbeknownst to them, the wrong Prelude loads
successfully. But I understand your point that this second case
is trickier and may not be worth the effort.

it's probably not that bad, actually:

$ ghc --make hello
[1 of 2] Compiling Prelude          ( Prelude.hs, Prelude.o )
[2 of 2] Compiling Main             ( hello.hs, hello.o )

hello.hs:1:8: Not in scope: `putStr'


You can pretty clearly see what happened there.

Cheers,
        Simon
_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to