#14162: Core Lint error -------------------------------------+------------------------------------- Reporter: Iceland_jack | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.2.1 Resolution: | Keywords: TypeInType Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by Simon Peyton Jones <simonpj@…>): In [changeset:"3a27e34f7a59a30f91fad9dd2ca194acdb1bcb1a/ghc" 3a27e34/ghc]: {{{ #!CommitTicketReference repository="ghc" revision="3a27e34f7a59a30f91fad9dd2ca194acdb1bcb1a" Fix subtle bug in TcTyClsDecls.mkGADTVars This bug was revealed by Trac #14162. In a GADT-style data-family instance we ended up a data constructor whose type mentioned an out-of-scope variable. (This variable was in the kind of a variable in the kind of a variable.) Only Lint complained about this (actually only when the data constructor was injected into the bindings by CorePrep). So it doesn't matter much -- but it's a solid bug and might bite us some day. It took me quite a while to unravel because the test case was itself quite tricky. But the fix is easy; just add a missing binding to the substitution we are building up. It's in the regrettably-subtle mkGADTVars function. }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14162#comment:5> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler