Warning: The import of `B.foo' from module `A' is redundant
Let's consider such A.hs:
module A (C(foo)) where
class C a where
foo :: a
foo = bar
bar :: a
bar = foo
and B.hs:
module B (Foo(..)) where
import qualified A as B (C(foo))
-- import qualified A as B (C) -- ? erros too
data Foo = Foo Int deriving Show
instance B.C Foo where
foo = Foo 4
Trying to build:
$ ghc --make -Wall -Werror B
[1 of 2] Compiling A ( A.hs, A.o )
[2 of 2] Compiling B ( B.hs, B.o )
B.hs:3:0:
Warning: The import of `B.foo' from module `A' is redundant
<no location info>:
Failing due to -Werror.
If I will remove foo somehow - I will get another error. At least message looks misleading, and warning seems to be false positive.
Might be related ot #1074 (closed)
Trac metadata
| Trac field | Value |
|---|---|
| Version | 6.12.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture |