[commit: ghc] master: Comments only [skip ci] (05551d0)

git at git.haskell.org git at git.haskell.org
Thu Dec 21 18:39:38 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/05551d00eabaea2734f9ddb5521a2e15233e9ee9/ghc

>---------------------------------------------------------------

commit 05551d00eabaea2734f9ddb5521a2e15233e9ee9
Author: Richard Eisenberg <rae at cs.brynmawr.edu>
Date:   Thu Dec 21 13:38:35 2017 -0500

    Comments only [skip ci]
    
    This fixes a typo and elaborates the Note [TyVarBndrs ...]
    in TyCoRep, which was previously subtly wrong about
    Required ForAllTys.


>---------------------------------------------------------------

05551d00eabaea2734f9ddb5521a2e15233e9ee9
 compiler/typecheck/TcSimplify.hs | 2 +-
 compiler/types/TyCoRep.hs        | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/compiler/typecheck/TcSimplify.hs b/compiler/typecheck/TcSimplify.hs
index 8001fd6..56d6c78 100644
--- a/compiler/typecheck/TcSimplify.hs
+++ b/compiler/typecheck/TcSimplify.hs
@@ -749,7 +749,7 @@ ctsPreds cts = [ ctEvPred ev | ct <- bagToList cts
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Consider
    f = e
-where f's type is infeered to be something like (a, Proxy k (Int |> co))
+where f's type is inferred to be something like (a, Proxy k (Int |> co))
 and we have an as-yet-unsolved, or perhaps insoluble, constraint
    [W] co :: Type ~ k
 We can't form types like (forall co. blah), so we can't generalise over
diff --git a/compiler/types/TyCoRep.hs b/compiler/types/TyCoRep.hs
index b7d92a2..64e1068 100644
--- a/compiler/types/TyCoRep.hs
+++ b/compiler/types/TyCoRep.hs
@@ -486,7 +486,8 @@ This table summarises the visibility rules:
 |  tvis :: ArgFlag
 |  tvis = Inferred:            f :: forall {a}. type    Arg not allowed:  f
 |  tvis = Specified:           f :: forall a. type      Arg optional:     f  or  f @Int
-|  tvis = Required:   Illegal: See Note [No Required TyBinder in terms]
+|  tvis = Required:            T :: forall k -> type    Arg required:     T *
+|    This last form is illegal in terms: See Note [No Required TyBinder in terms]
 |
 | TvBndr k cvis :: TyConBinder, in the TyConBinders of a TyCon
 |  cvis :: TyConBndrVis



More information about the ghc-commits mailing list