summaryrefslogtreecommitdiff
path: root/compiler/specialise/Specialise.hs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/specialise/Specialise.hs')
-rw-r--r--compiler/specialise/Specialise.hs6
1 files changed, 2 insertions, 4 deletions
diff --git a/compiler/specialise/Specialise.hs b/compiler/specialise/Specialise.hs
index ed2ae073e9..3434172de2 100644
--- a/compiler/specialise/Specialise.hs
+++ b/compiler/specialise/Specialise.hs
@@ -5,6 +5,7 @@
-}
{-# LANGUAGE CPP #-}
+{-# LANGUAGE DeriveFunctor #-}
{-# LANGUAGE ViewPatterns #-}
module Specialise ( specProgram, specUnfolding ) where
@@ -2530,7 +2531,7 @@ deleteCallsFor bs calls = delDVarEnvList calls bs
************************************************************************
-}
-newtype SpecM a = SpecM (State SpecState a)
+newtype SpecM a = SpecM (State SpecState a) deriving (Functor)
data SpecState = SpecState {
spec_uniq_supply :: UniqSupply,
@@ -2538,9 +2539,6 @@ data SpecState = SpecState {
spec_dflags :: DynFlags
}
-instance Functor SpecM where
- fmap = liftM
-
instance Applicative SpecM where
pure x = SpecM $ return x
(<*>) = ap