[GHC] #13674: Poor error message which masks occurs-check failure
GHC
ghc-devs at haskell.org
Fri May 26 08:55:09 UTC 2017
#13674: Poor error message which masks occurs-check failure
-------------------------------------+-------------------------------------
Reporter: RyanGlScott | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler (Type | Version: 8.0.1
checker) |
Resolution: | Keywords: TypeInType
Operating System: Unknown/Multiple | Architecture:
Type of failure: GHC rejects | Unknown/Multiple
valid program | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Simon Peyton Jones <simonpj@…>):
In [changeset:"c2eea089e7978416c6882a5456117db27b8f45ba/ghc" c2eea08/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="c2eea089e7978416c6882a5456117db27b8f45ba"
Make isInsolubleOccursCheck more aggressive
Consider
type family F a :: * -> *
Then (a ~ F Int a) is an insoluble occurs check, and can be reported
as such. Previous to this patch, TcType.isInsolubleOccursCheck was
treating any type-family application (including an over-saturated one)
as unconditionally not-insoluble.
This really only affects error messages, and then only slightly. I
tripped over this when investigating Trac #13674.
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13674#comment:11>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list