
#11563: fvProv falls into a hole (instead of detecting missing type argument) (regression from -rc1 to -rc2) -------------------------------------+------------------------------------- Reporter: j.waldmann | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.1-rc2 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- This program has an error (T is missing an argument) {{{ data T a ; class C t ; instance C s => C T }}} which makes 8-rc2 fall into a hole: {{{ /opt/ghc/ghc-8.0.0.20160204/bin/ghc -c Bug.hs ghc: panic! (the 'impossible' happened) (GHC version 8.0.0.20160204 for x86_64-unknown-linux): fvProv falls into a hole {ap6} }}} It is detected by 8-rc1: {{{ /opt/ghc/ghc-8.0.0.20160111/bin/ghc -c Bug.hs Bug.hs:1:40: error: • Illegal instance declaration for ‘C T’ (All instance types must be of the form (T a1 ... an) where a1 ... an are *distinct type variables*, and each type variable appears at most once in the instance head. Use FlexibleInstances if you want to disable this.) • In the instance declaration for ‘C T’ Bug.hs:1:42: error: • Expecting one more argument to ‘T’ Expected a type, but ‘T’ has kind ‘* -> *’ • In the first argument of ‘C’, namely ‘T’ In the instance declaration for ‘C T’ }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11563 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler