Closed goldfirere closed 8 years ago
This works:
foo :: forall l a k. l ~ Maybe k => Proxy (a :: l) -> Bool foo (_ :: Proxy (b :: j)) = undefined
But this doesn't:
foo :: l ~ Maybe k => Proxy (a :: l) -> Bool foo (_ :: Proxy (b :: j)) = undefined
I've simply dropped the explicit quantification. GHC is guessing the wrong order?
See also #46.
Works on GHC 7.11.20151214.
GHC 7.11.20151214
Yes. It took a surprisingly large effort to sort out these sorts of problems, but I believe this class of bugs should be fixed now. Thanks for checking!
This works:
But this doesn't:
I've simply dropped the explicit quantification. GHC is guessing the wrong order?