Scoping bug in module system implementation

"Iavor Diatchki" <[email protected]> Sun, 11 Feb 2007 19:30:12 -0800
Newsgroups gmane.comp.lang.haskell.hugs.bugs
Message-ID <[email protected]>
Hello,
Consider the following two modules:

> module A where x = True

> module B where
> import A
> x = 'a'
> test = let x = "" in x

Upon loading "B", Hugs (Sept 2006) erroneously reports:
Ambiguous variable occurrence "x"
*** Could refer to: B.x A.x

The variable "x" in the definition of "test" refers to the locally
defined "x", and not the top-level name, so there is no ambiguity.

-Iavor