
#10071: Implement deprecation-warnings for class-methods to non-method transitions -------------------------------------+------------------------------------- Reporter: hvr | Owner: Type: feature request | Status: new Priority: normal | Milestone: 7.12.1 Component: Compiler | Version: 7.8.4 Resolution: | Keywords: AMP Operating System: Unknown/Multiple | MonadFail Type of failure: None/Unknown | Architecture: Blocked By: | Unknown/Multiple Related Tickets: #8004, #4384 | Test Case: | Blocking: | Differential Revisions: -------------------------------------+------------------------------------- Comment (by simonpj): I have attempted a precise specification, in [wiki:Design/MethodDeprecations]. See if you agree with it. What about this? (Using the main example in [wiki:Design/MethodDeprecations] {{{ module M where import X import M1 ( C(..) ) x = bar () }}} Do we get a warning here? You might say that since `X` doesn't export `bar` (which is not obvious) that the only way it can be in scope is via `C(..)`. I say yes, and I have articulated that in the wiki page. There is a design alternative described there too; I'm not sure what you want. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10071#comment:10 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler