
#14710: GHC 8.4.1-alpha allows the use of kind polymorphism without PolyKinds -------------------------------------+------------------------------------- Reporter: RyanGlScott | Owner: (none) Type: bug | Status: new Priority: high | Milestone: 8.4.1 Component: Compiler (Type | Version: 8.4.1-alpha1 checker) | Resolution: | Keywords: PolyKinds Operating System: Unknown/Multiple | Architecture: Type of failure: GHC accepts | Unknown/Multiple invalid program | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by RyanGlScott): Well, I'd //like// to be able to fix this, but have no solid idea of where to start. My first inclination would be to insert a validity check into the `KindedTyVar` case of [http://git.haskell.org/ghc.git/blob/f00ddea96cc856654ac90fcf7d29556a758d6648... bindLHsTyVarBndrs]. I'd need to do roughly the following: * I'd need to figure out which variables are already bound in an enclosing scope (after all, those are the only sorts of type variables that exhibit this problem). * I'd need to partition them into type and kind variables (we only care about the kind variables). * Of those kind variables, I'd need to figure out which of them were originally bound as type variables. I'm afraid I don't know how to do any of those steps. Help? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14710#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler