summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorBen Gamari <bgamari.foss@gmail.com>2016-03-24 11:39:59 +0100
committerBen Gamari <ben@smart-cactus.org>2016-03-24 12:29:42 +0100
commit371608f1cdaf20c49eb6c5ec165b9eb08b745a89 (patch)
tree65cd080f700448034e4206223852ae1a201a86fb /docs
parent1448f8ab2379452312f1f74f6d5ba4de8ad3d47e (diff)
downloadhaskell-371608f1cdaf20c49eb6c5ec165b9eb08b745a89.tar.gz
Default RuntimeRep variables unless -fprint-explicit-runtime-reps
Summary: Addresses #11549 by defaulting `RuntimeRep` variables to `PtrRepLifted` and adding a new compiler flag `-fprint-explicit-runtime-reps` to disable this behavior. This is just a guess at the right way to go about this. If it's wrong-beyond-any-hope just say so. Test Plan: Working on a testcase Reviewers: goldfire, austin Subscribers: simonpj, thomie Differential Revision: https://phabricator.haskell.org/D1961 GHC Trac Issues: #11549
Diffstat (limited to 'docs')
-rw-r--r--docs/users_guide/using.rst16
1 files changed, 16 insertions, 0 deletions
diff --git a/docs/users_guide/using.rst b/docs/users_guide/using.rst
index bcd641fb28..3d3ef34d02 100644
--- a/docs/users_guide/using.rst
+++ b/docs/users_guide/using.rst
@@ -684,6 +684,22 @@ messages and in GHCi:
ghci> :t MkT
MkT :: forall (k :: BOX) (a :: k). T k a
+.. ghc-flag:: -fprint-explicit-runtime-reps
+
+ When :ghc-flag:`-fprint-explicit-runtime-reps` is enabled, GHC prints
+ ``RuntimeRep`` type variables for runtime-representation-polymorphic types.
+ Otherwise GHC will default these to ``PtrRepLifted``. For example,
+
+ .. code-block:: none
+
+ ghci> :t ($)
+ ($) :: (a -> b) -> a -> b
+ ghci> :set -fprint-explicit-runtime-reps
+ ghci> :t ($)
+ ($)
+ :: forall (r :: GHC.Types.RuntimeRep) a (b :: TYPE r).
+ (a -> b) -> a -> b
+
.. ghc-flag:: -fprint-explicit-coercions
Using :ghc-flag:`-fprint-explicit-coercions` makes GHC print coercions in