
#9702: Offer a weaker name shadowing warning -------------------------------------+------------------------------------- Reporter: dfeuer | Owner: Type: feature request | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.9 Keywords: warning, module | Operating System: Architecture: Unknown/Multiple | Unknown/Multiple Difficulty: Unknown | Type of failure: Blocked By: | None/Unknown Related Tickets: | Test Case: | Blocking: | Differential Revisions: -------------------------------------+------------------------------------- Suppose I have a module {{{#!hs module Survive where import HuntGather flounder = goFishing river where goFishing = ... }}} If the maintainer of `HuntGather` decides to add a `goFishing` function, my module will suddenly get a name shadowing warning, although there is little risk of confusion. So I think it makes a lot of sense to offer, at least, a version that ignores shadowing of *implicitly imported* names, and to use this for `-Wall` instead of the current version. Another step down would be to ignore shadowing of all top-level names, but having three levels of name shadowing warning would be too much trouble by far. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9702 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler