summaryrefslogtreecommitdiff
path: root/testsuite/tests/simplCore/T9646/StrictPrim.hs
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/simplCore/T9646/StrictPrim.hs')
-rw-r--r--testsuite/tests/simplCore/T9646/StrictPrim.hs10
1 files changed, 4 insertions, 6 deletions
diff --git a/testsuite/tests/simplCore/T9646/StrictPrim.hs b/testsuite/tests/simplCore/T9646/StrictPrim.hs
index 5b83f2fcf1..e85e11e6fc 100644
--- a/testsuite/tests/simplCore/T9646/StrictPrim.hs
+++ b/testsuite/tests/simplCore/T9646/StrictPrim.hs
@@ -18,7 +18,10 @@ newtype StrictPrim s a
instance Applicative (StrictPrim s) where
{-# INLINE pure #-}
- pure = return
+ pure !x = StrictPrim ( \ !s -> (# s, x #))
+
+ {-# INLINE (*>) #-}
+ (!m) *> (!k) = do { _ <- m ; k }
{-# INLINE (<*>) #-}
(<*>) a b = do f <- a ; v <- b ; return $! (f $! v)
@@ -31,11 +34,6 @@ instance Functor (StrictPrim s) where
instance Monad (StrictPrim s) where
- {-# INLINE return #-}
- return !x = StrictPrim ( \ !s -> (# s, x #))
-
- {-# INLINE (>>) #-}
- (!m) >> (!k) = do { _ <- m ; k }
{-# INLINE (>>=) #-}
(StrictPrim !m) >>= (!k) =