
#8827: Inferring Safe mode with GeneralizedNewtypeDeriving is wrong -------------------------------------+------------------------------------- Reporter: goldfire | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.9 Resolution: | Keywords: SafeHaskell Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #8226, #8745 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by dterei): I wrote up a detailed summary of all of this 6 months back here: [wiki:SafeRoles/RolesOverview Roles Overview]. I believe the recursive check can be done, and in such a way were we track that it's possible to import the right modules to satisfy the requirement that all constructors are in-scope, rather than actually require these imports (which is the main complaint against this check). The complications to this recursive check are internal vs. external modules and Safe Haskell import restrictions. They seem resolvable though, just annoying engineering most likely. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8827#comment:52 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler