[GHC] #14174: GHC panic with TypeInType and type family
GHC
ghc-devs at haskell.org
Wed Dec 13 16:45:27 UTC 2017
#14174: GHC panic with TypeInType and type family
-------------------------------------+-------------------------------------
Reporter: dfeuer | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone: 8.2.3
Component: Compiler (Type | Version: 8.2.1
checker) |
Resolution: | Keywords: TypeInType
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: Compile-time | Test Case:
crash or panic | polykinds/T14174.hs, T14174a
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Simon Peyton Jones <simonpj@…>):
In [changeset:"0a12d92a8f65d374f9317af2759af2b46267ad5c/ghc"
0a12d92a/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="0a12d92a8f65d374f9317af2759af2b46267ad5c"
Further improvements to well-kinded types
The typechecker has the invariant that every type should be well-kinded
as it stands, without zonking. See Note [The well-kinded type invariant]
in TcType.
That invariant was not being upheld, which led to Trac #14174. I fixed
part of it, but T14174a showed that there was more. This patch finishes
the job.
* See Note [The tcType invariant] in TcHsType, which articulates an
invariant that was very nearly, but not quite, true. One place that
falisified it was the HsWildCardTy case of tc_hs_type, so I fixed that.
* mkNakedCastTy now makes no attempt to eliminate casts; indeed it cannot
lest it break Note [The well-kinded type invariant]. The prior comment
suggested that it was crucial for performance but happily it seems not
to be. The extra Refls are eliminated by the zonker.
* I found I could tidy up TcHsType.instantiateTyN and instantiateTyUntilN
by eliminating one of its parameters. That led to a cascade of minor
improvements in TcTyClsDecls. Hooray.
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14174#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list