logo       

RE: ghc-6.2 bug in type inference: msg#00029

lang.haskell.glasgow.bugs

Subject: RE: ghc-6.2 bug in type inference


> So there are two faults here.
>
> * package extra-ghc-opts are propagated to all
> compilations, whether those compilations use that package or
> not.

Indeed - I don't recommend the use of extra_ghc_opts at all. It doesn't
make sense with auto packages (which most hierarchical packages are),
because the compiler doesn't know which packages it needs before it
compiles the code, and then its too late. extra_ghc_opts is a really
bad idea, I wish we'd never put it in in the first place. I think in
the future we'll emit a warning or deprecate the feature.

> * -fglasgow-exts makes perfectly reasonable Haskell'98 code
> invalid, throws up a totally misleading error unrelated to the
> cause of the problem, and gives no clue as to what particular
> extension is responsible.

Taking these in order:

- -fglasgow-exts breaks Haskell 98 code: yes of course, because it
defines extra keywords for one thing.

- throws up a misleading error message: I'm not sure if you're
talking about this specific case or error messages in general -
sure we're not very clever about giving helpful error messages in
lots of ways. You can report this as a bug if you like :-)

- gives no clue as to what extension is responsible: hmm, this is
a really hard problem too, isn't it? Surely you don't mean that we
should figure out, for every error message, which set of extensions
if turned off would make the error go away? And what impact on
the rest of the module turning off those extensions would have?
If I turn on FFI extensions in nhc98, does it helpfully remind me
what I've done wrong when I attempt to use 'foreign' as a function
name?

Cheers,
Simon


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise