oes often
happen, see TcUnify.uType_defer.) BUT if we generate an equality constraint,
the zonking won't work, and the foralls won't be exposed early enough. I wish
that the story here was more solid.
The original idea of tcInferRho was to have some special cases that did not
rely o
defer_me in TcUnify.checkTauTvUpdate prevent such a thing from
happening?
To learn more, I tried compiling this code:
> f :: Bool -> Bool -> (forall a. a -> a) -> ()
> f = undefined
>
> g = (True `f` False) id
I use infix application to avoid tcInferRho.
With -ddump-tc-tra
the fly, so the "it's always
ok to defer" rule doesn't hold.
Simon
| -Original Message-
| From: Richard Eisenberg [mailto:e...@cis.upenn.edu]
| Sent: 22 July 2014 13:22
| To: Simon Peyton Jones
| Cc: ghc-devs@haskell.org
| Subject: Re: tcInferRho
|
| OK -- that al
the fly, so the "it's
> always ok to defer" rule doesn't hold.
>
> Simon
>
> | -Original Message-
> | From: Richard Eisenberg [mailto:e...@cis.upenn.edu]
> | Sent: 22 July 2014 13:22
> | To: Simon Peyton Jones
> | Cc: ghc-devs@haskell.org
&
x27;s one reason that the
entire ImpredicativeTypes extensions is currently in limbo.
Simon
| -Original Message-
| From: Richard Eisenberg [mailto:e...@cis.upenn.edu]
| Sent: 22 July 2014 14:27
| To: Simon Peyton Jones
| Cc: ghc-devs@haskell.org
| Subject: Re: tcInferRho
|
| Ah -- it&