summaryrefslogtreecommitdiff
path: root/libraries/ghc-prim
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2017-12-19 10:35:27 +0000
committerSimon Peyton Jones <simonpj@microsoft.com>2017-12-19 15:29:35 +0000
commit10ed31980f30bf2a0091b6f4cef11e0f2f633f22 (patch)
treeefe00463657258f63a2e8e0f13ec05e5291cc999 /libraries/ghc-prim
parenta100763cc5c6c9736a00ca57b2ec3c721311eecb (diff)
downloadhaskell-10ed31980f30bf2a0091b6f4cef11e0f2f633f22.tar.gz
Stop runRW# being magic
Triggered by thinking about Trac #14596, I found that runRW# does not need to be a "magic" wired-in Id, now that we have levity polymorphism. This patch stops it being wired-in.
Diffstat (limited to 'libraries/ghc-prim')
-rw-r--r--libraries/ghc-prim/GHC/Magic.hs5
1 files changed, 2 insertions, 3 deletions
diff --git a/libraries/ghc-prim/GHC/Magic.hs b/libraries/ghc-prim/GHC/Magic.hs
index 2d4de6fb70..7d6f60e411 100644
--- a/libraries/ghc-prim/GHC/Magic.hs
+++ b/libraries/ghc-prim/GHC/Magic.hs
@@ -114,11 +114,10 @@ oneShot f = f
runRW# :: forall (r :: RuntimeRep) (o :: TYPE r).
(State# RealWorld -> o) -> o
--- See Note [runRW magic] in MkId
+-- See Note [runRW magic] in CorePrep
+{-# NOINLINE runRW# #-} -- runRW# is inlined manually in CorePrep
#if !defined(__HADDOCK_VERSION__)
runRW# m = m realWorld#
#else
runRW# = runRW# -- The realWorld# is too much for haddock
#endif
-{-# NOINLINE runRW# #-}
--- This is inlined manually in CorePrep