[GHC] #8368: Panic in rejigConRes
GHC
ghc-devs
Thu Oct 3 20:02:46 UTC 2013
#8368: Panic in rejigConRes
-------------------------------------+------------------------------------
Reporter: goldfire | Owner: goldfire
Type: bug | Status: patch
Priority: normal | Milestone:
Component: Compiler | Version: 7.7
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Difficulty: Unknown
Test Case: | Blocked By:
Blocking: | Related Tickets:
-------------------------------------+------------------------------------
Comment (by Krzysztof Gogolewski <krz.gogolewski@?>):
In [changeset:0c7d2d7507b9e4dca24c159c0bfcce9de7b233c4/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="0c7d2d7507b9e4dca24c159c0bfcce9de7b233c4"
Fix Trac #8368.
Two different fixes were necessary here. First, we need to fail eagerly
in kcConDecl, to prevent the return-type error in tcConDecl from firing
twice. (This wasn't caught earlier because of the eager fail in the
datatype kind-checking code -- which isn't used for data instances!)
We also must check again in tcDataFamInstDecl, because it's possible for
a data instance return type to have the right head but the wrong body
(i.e., doesn't conform to the data instance type patterns). This check
is only possible *after* desugaring from HsType to Type, so it can't be
done in tcConRes with the first check.
This is documented in a comment at check_valid_data_con, a local
function within tcDataFamInstDecl.
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8368#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list