From f75282a447b57845e4c1a8702b28d47b9f3dfeb1 Mon Sep 17 00:00:00 2001 From: Nathaniel Wesley Filardo Date: Tue, 10 Mar 2015 22:48:53 -0400 Subject: [PATCH] Small compilation fixes Hopefully addresses github nwf/dyna#79 --- src/Dyna/Analysis/Mode/Execution/Functions.hs | 1 + src/Dyna/Analysis/Mode/Execution/NamedInst.hs | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Dyna/Analysis/Mode/Execution/Functions.hs b/src/Dyna/Analysis/Mode/Execution/Functions.hs index a90177a..43e1050 100644 --- a/src/Dyna/Analysis/Mode/Execution/Functions.hs +++ b/src/Dyna/Analysis/Mode/Execution/Functions.hs @@ -10,6 +10,7 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE ViewPatterns #-} +{-# LANGUAGE AllowAmbiguousTypes #-} -- XXX doCall {-# OPTIONS_GHC -Wall #-} module Dyna.Analysis.Mode.Execution.Functions ( diff --git a/src/Dyna/Analysis/Mode/Execution/NamedInst.hs b/src/Dyna/Analysis/Mode/Execution/NamedInst.hs index aeaef4e..3a449db 100644 --- a/src/Dyna/Analysis/Mode/Execution/NamedInst.hs +++ b/src/Dyna/Analysis/Mode/Execution/NamedInst.hs @@ -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 -- 2.50.1