Actually define the (<$) method
authorDavid Feuer <David.Feuer@gmail.com>
Mon, 25 Jul 2016 16:01:26 +0000 (12:01 -0400)
committerDavid Feuer <David.Feuer@gmail.com>
Mon, 25 Jul 2016 16:03:27 +0000 (12:03 -0400)
Accidentally defined a separate `(<$)` function for `Data.Map`.

Also, fix unused binding warnings.

Data/IntMap/Base.hs
Data/Map/Base.hs

index 2a735bb..6fcca50 100644 (file)
@@ -2100,7 +2100,7 @@ instance Functor IntMap where
 #ifdef __GLASGOW_HASKELL__
     a <$ Bin p m l r = Bin p m (a <$ l) (a <$ r)
     a <$ Tip k _     = Tip k a
-    a <$ Nil         = Nil
+    _ <$ Nil         = Nil
 #endif
 
 {--------------------------------------------------------------------
index 4157c17..792206b 100644 (file)
@@ -318,6 +318,7 @@ import Data.Utils.BitUtil (wordSize)
 
 #if __GLASGOW_HASKELL__
 import GHC.Exts (build)
+import Data.Functor ((<$))
 #if USE_MAGIC_PROXY
 import GHC.Exts (Proxy#, proxy# )
 #endif
@@ -3028,9 +3029,9 @@ instance (Ord k, Ord v) => Ord (Map k v) where
 --------------------------------------------------------------------}
 instance Functor (Map k) where
   fmap f m  = map f m
-#if __GLASGOW_HASKELL__
-a <$ Tip = Tip
-a <$ (Bin sx kx _ l r) = Bin sx kx a (a <$ l) (a <$ r)
+#ifdef __GLASGOW_HASKELL__
+  _ <$ Tip = Tip
+  a <$ (Bin sx kx _ l r) = Bin sx kx a (a <$ l) (a <$ r)
 #endif
 
 instance Traversable (Map k) where