With the module module Foo (,) where foo = 0 I get 2:14 Found Prelude.2 but expected one of _where_ () ( but the report (and GHC) allows this. Similarly with import lists I get either 4:15 Found Prelude.2 but expected a {-end-of-definition-or-EOF-} or 4:15 Found _hiding_ but expected a {-end-of-definition-or-EOF-} depending on whether I use hiding. Thanks Ian