[GHC] #11715: There's something fishy going on with Constraint
GHC
ghc-devs at haskell.org
Thu Mar 17 00:10:58 UTC 2016
#11715: There's something fishy going on with Constraint
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner:
Type: bug | Status: new
Priority: high | Milestone: 8.0.1
Component: Compiler (Type | Version: 8.0.1-rc1
checker) |
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by bgamari):
I just remembered another little nugget that I noticed during #11334:
There is a bizarre order dependence to this bug. For instance,
{{{#!hs
main = do
print $ typeof (proxy :: proxy (Eq int))
print $ typeof (proxy :: proxy Eq)
}}}
will emit,
{{{
Proxy Constraint (Eq Int)
Proxy (Constraint -> Constraint) Eq
}}}
Whereas if you flip the order of the `print`s (presumably such that the
solver encounters `*` first rather than `Constraint`) you see what I
reported in the ticket description,
{{{
Proxy (* -> *) Eq
Proxy * (Eq Int)
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11715#comment:1>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list