[GHC] #13233: typePrimRep panic while compiling GHC with profiling
GHC
ghc-devs at haskell.org
Sat Feb 11 09:59:19 UTC 2017
#13233: typePrimRep panic while compiling GHC with profiling
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner: bgamari
Type: bug | Status: new
Priority: highest | Milestone: 8.2.1
Component: Compiler | Version: 8.0.1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
crash or panic | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonmar):
Replying to [comment:21 simonpj]:
> I strongly agree that we should write down the invariants for ticks
So just to write down what we discussed the other day:
* I believe there are (or were) no invariants on where ticks can appear in
Core. However, there's an invariant that `(#,#)` must be directly applied
to its type arguments, with no intervening ticks. (maybe it's more general
than this?). Core Lint should really check this invariant.
* We think that this invariant is satisfied by the desugarer but gets
violated when the simplifier moves ticks inside type applications
(https://phabricator.haskell.org/diffusion/GHC/browse/master/compiler/coreSyn/CoreUtils.hs;639e702b6129f501c539b158b982ed8489e3d09c$342-344).
We don't know if there are other places that might violate the invariant.
* I (@simonmar) was worried that if we just stop doing this we might lose
other beneficial transformations. @bgamari is going to try it and check.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13233#comment:23>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list