[GHC] #13782: Bullish use of Template Haskell's newName causes GHC internal error
GHC
ghc-devs at haskell.org
Wed Jun 14 22:03:47 UTC 2017
#13782: Bullish use of Template Haskell's newName causes GHC internal error
-------------------------------------+-------------------------------------
Reporter: RyanGlScott | Owner: carlostome
Type: bug | Status: patch
Priority: high | Milestone: 8.2.1
Component: Template Haskell | 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: #12503 | Differential Rev(s): Phab:D3641
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by simonpj):
I agree with Richard's comment that the fix is suspicous. For now, let's
just dump the `OccSets` entirely, and filter the `RdrName` lists. This
will actually be more efficient in the common case of small sets.
If we find programs with zillions of foralls we can deal with it then.
Incidentally, even as it stands we call `nub` on these lists, and there is
lots of appending, which is equally quadratic.
I believe, but I am not sure, that `fkfv_all = fktv_kis ++ kktv_tys`.
Assuming so, let's dump `fktv_all` too leaving only two fields, and just
append when needed. Unless the ''order'' is significant? Nothing in
the comments suggest that it is. Richard?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13782#comment:10>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list