]> hydra-www.ietfng.org Git - dyna2/commitdiff
Small compilation fixes
authorNathaniel Wesley Filardo <nwf@cs.jhu.edu>
Wed, 11 Mar 2015 02:48:53 +0000 (22:48 -0400)
committerNathaniel Wesley Filardo <nwf@cs.jhu.edu>
Wed, 11 Mar 2015 02:49:26 +0000 (22:49 -0400)
Hopefully addresses github nwf/dyna#79

src/Dyna/Analysis/Mode/Execution/Functions.hs
src/Dyna/Analysis/Mode/Execution/NamedInst.hs

index a90177a32ad468091ca9bbe7f9447a8096907e6d..43e105002befd6391f6ddfe2ad515f90657b747e 100644 (file)
@@ -10,6 +10,7 @@
 {-# LANGUAGE ScopedTypeVariables #-}
 {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE ViewPatterns #-}
+{-# LANGUAGE AllowAmbiguousTypes #-} -- XXX doCall
 {-# OPTIONS_GHC -Wall #-}
 
 module Dyna.Analysis.Mode.Execution.Functions (
index aeaef4e16bccf4e588961044c4aec50c603ab7f3..3a449db713fda63c46f291e2abaa1895240e262a 100644 (file)
@@ -254,7 +254,12 @@ nLeqGLB, nSubGLB :: forall f . (Ord f) => NIX f -> NIX f -> NIX f
 nLeqGLB (NIX l) (NIX r) = NIX $ autMerge ctxUniq (bendImpl iLeqGLB_) l r
 nSubGLB (NIX l) (NIX r) = NIX $ autMerge (\_ _ -> ()) go l r
  where
-  go lsml lsmr merge () = iSubGLB_ (flip (lsml ())) (lsmr ()) (merge ())
+  go :: forall m x y z . (Monad m)
+     => (() -> x                -> NonRec (InstF f) -> m z)
+     -> (() -> NonRec (InstF f) -> y                -> m z)
+     -> (() -> x                -> y                -> m z)
+     ->  () -> InstF f x        -> InstF f y        -> m (InstF f z)
+  go lsml lsmr merge () = iSubGLB_ (\x y -> lsml () y x) (lsmr ()) (merge ())
 
 nLeqGLBRD, nLeqGLBRL :: (Ord f) => NIX f -> NIX f -> Either UnifFail (NIX f)
 nLeqGLBRD (NIX l) (NIX r) = fmap NIX $ autPMerge ctxUniq (bendImpl iLeqGLBRD_) l r