[GHC] #14880: GHC panic: updateRole
GHC
ghc-devs at haskell.org
Wed Sep 12 14:36:13 UTC 2018
#14880: GHC panic: updateRole
-------------------------------------+-------------------------------------
Reporter: RyanGlScott | Owner: goldfire
Type: bug | Status: new
Priority: normal | Milestone: 8.8.1
Component: Compiler (Type | Version: 8.2.2
checker) |
Resolution: | Keywords: TypeInType
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
crash or panic | Test Case:
Blocked By: | Blocking:
Related Tickets: #15076 | Differential Rev(s): Phab:D4769,
Wiki Page: | Phab:D5141
-------------------------------------+-------------------------------------
Comment (by goldfire):
* First off, no mists of time here: the more ambitious patch was because
comment:13 fixed the problem in TcType -- which caused the original bug --
but that same problem existed in TyCoRep. We just didn't have (and still
don't, to my knowledge) a concrete program that exhibits misbehavior. I
don't remember the exact cause of the bug I mentioned in comment:13, but I
don't think that's about the changes in TyCoRep.
* Your new approach relies on this invariant: If a variable in a tyvar
kind is in the bound-var set, then the variable is in the bound-var set,
too. Perhaps easier is to think about the contrapositive: If a variable is
not in the bound-var set (in other words, if we look at it at all), then
no variable in its kind is in the bound-var set (so we can zap the bound-
var set). This invariant is certainly true of well-typed programs. (It's
just barely conceivable that it might not be true in the case of a mis-
ordered telescope, but let's not worry about that now.) So: yes, I think
that works nicely.
Nice idea. It's very much worth a Note.
@tdammers: Do you think you can push this new idea through? I can write
the Note if need be.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14880#comment:124>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list