[commit: ghc] ghc-kinds: Add AnyK as a primitive. Documentation to come. (5b80ca9)
José Pedro Magalhães
jpm at cs.uu.nl
Mon Oct 24 17:03:57 CEST 2011
Repository : ssh://darcs.haskell.org//srv/darcs/ghc
On branch : ghc-kinds
http://hackage.haskell.org/trac/ghc/changeset/5b80ca9a4edba3b13a2a62eb8cbbb46b84010313
>---------------------------------------------------------------
commit 5b80ca9a4edba3b13a2a62eb8cbbb46b84010313
Author: Jose Pedro Magalhaes <jpm at cs.uu.nl>
Date: Mon Oct 24 09:23:26 2011 +0100
Add AnyK as a primitive. Documentation to come.
>---------------------------------------------------------------
compiler/prelude/TysPrim.lhs | 4 +++-
compiler/prelude/primops.txt.pp | 3 +++
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/compiler/prelude/TysPrim.lhs b/compiler/prelude/TysPrim.lhs
index 0161f76..55bcc81 100755
--- a/compiler/prelude/TysPrim.lhs
+++ b/compiler/prelude/TysPrim.lhs
@@ -311,7 +311,7 @@ kindTyConType kind = TyConApp kind []
-- | See "Type#kind_subtyping" for details of the distinction between these 'Kind's
anyKind, liftedTypeKind, unliftedTypeKind, openTypeKind, argTypeKind, ubxTupleKind, constraintKind :: Kind
-anyKind = kindTyConType anyKindTyCon
+anyKind = kindTyConType anyKindTyCon
liftedTypeKind = kindTyConType liftedTypeKindTyCon
unliftedTypeKind = kindTyConType unliftedTypeKindTyCon
openTypeKind = kindTyConType openTypeKindTyCon
@@ -613,6 +613,8 @@ threadIdPrimTyCon = pcPrimTyCon0 threadIdPrimTyConName PtrRep
%* *
%************************************************************************
+JPM Todo: Document AnyK
+
Note [Any types]
~~~~~~~~~~~~~~~~
The type constructor Any::* has these properties
diff --git a/compiler/prelude/primops.txt.pp b/compiler/prelude/primops.txt.pp
old mode 100644
new mode 100755
index 8cad832..f3906cd
--- a/compiler/prelude/primops.txt.pp
+++ b/compiler/prelude/primops.txt.pp
@@ -1880,6 +1880,9 @@ primtype Any a
into interface files, we'll get a crash; at least until we add interface-file
syntax to support them. }
+primtype AnyK
+ { JPM Todo }
+
pseudoop "unsafeCoerce#"
a -> b
{ The function {\tt unsafeCoerce\#} allows you to side-step the typechecker entirely. That
More information about the Cvs-ghc
mailing list