Role problems pervent GND from happening
authorGabor Greif <ggreif@gmail.com>
Wed, 17 Dec 2014 11:49:51 +0000 (12:49 +0100)
committerGabor Greif <ggreif@gmail.com>
Wed, 17 Dec 2014 11:56:01 +0000 (12:56 +0100)
with GHC HEAD. Reworked using deriving instance.

compiler/utils/UniqFM.hs

index 8f962d4..e24c717 100644 (file)
@@ -23,7 +23,9 @@ of arguments of combining function.
 {-# LANGUAGE CPP #-}
 {-# LANGUAGE DeriveDataTypeable #-}
 {-# LANGUAGE DeriveTraversable #-}
+{-# LANGUAGE FlexibleContexts #-}
 {-# LANGUAGE GeneralizedNewtypeDeriving #-}
+{-# LANGUAGE StandaloneDeriving #-}
 {-# OPTIONS_GHC -Wall #-}
 
 module UniqFM (
@@ -211,9 +213,11 @@ instance Monoid (UniqFM a) where
 -}
 
 newtype UniqFM ele = UFM (M.IntMap ele)
-  deriving (Data, Eq, Foldable.Foldable, Functor, Traversable.Traversable,
+  deriving (Data, Eq, Functor, Traversable.Traversable,
             Typeable)
 
+deriving instance Foldable.Foldable UniqFM
+
 emptyUFM = UFM M.empty
 isNullUFM (UFM m) = M.null m
 unitUFM k v = UFM (M.singleton (getKey $ getUnique k) v)