
#11712: Very confusing error message with -fprint-explicit-kinds -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: 8.0.1 Component: Compiler (Type | Version: 7.10.3 checker) | Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Incorrect | Unknown/Multiple warning at compile-time | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Description changed by bgamari: @@ -11,1 +11,3 @@ - the second it is applied to three. + the second it is applied to three. Presuambly this is due to the former + being kind heterogeneous, so at very least I'd think that `~~` should be + used here. New description: While trying to work out a type error I encountered the following, {{{ compiler/utils/Binary.hs:607:59: error: • Could not deduce: (~) * * arg * from the context: (~) * k (arg -> res) ... }}} Note how in the first line `(~)` is applied to four arguments whereas on the second it is applied to three. Presuambly this is due to the former being kind heterogeneous, so at very least I'd think that `~~` should be used here. In general, it would be nice if we could make equalities a bit more readable, perhaps special-casing them in the pretty-printer as, {{{ (a :: k) ~ (b :: k') }}} -- -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11712#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler