]> gitweb @ CieloNegro.org - hs-rrdtool.git/blobdiff - Database/RRDtool.hs
do not use IncoherentInstances
[hs-rrdtool.git] / Database / RRDtool.hs
index df0fc4863efc084a34695bf3c8e10d44926a1eeb..a1fc0ecf716cb8fe3f378ddcdfd6df960e61ab54 100644 (file)
@@ -182,14 +182,12 @@ class (Show e, Eq e) => Expr e
 class Expr e => CommonExpr e
 class Expr e => IterativeExpr e
 class Expr e => AggregativeExpr e
-instance CommonExpr e => IterativeExpr e
 
 class (Show es, Eq es, HList es) => ExprSet es
 instance ExprSet HNil
 instance (Expr e, ExprSet es) => ExprSet (e :*: es)
 
 class (Show es, Eq es, HList es) => CommonExprSet es
-instance CommonExprSet es => ExprSet es
 instance CommonExprSet HNil
 instance (CommonExpr e, CommonExprSet es) => CommonExprSet (e :*: es)
 
@@ -298,7 +296,7 @@ data CommonSetOp es
     deriving (Show, Eq, Ord)
 
 instance ExprSet es => Expr (CommonSetOp es)
-instance CommonExprSet es => CommonExpr (CommonSetOp es)
+instance (ExprSet es, CommonExprSet es) => CommonExpr (CommonSetOp es)
 instance VariableSet (HConcat (HMap ApplyMentionedVarsOf es)) =>
     MentionedVars (CommonSetOp es) where
         type MentionedVarsOf (CommonSetOp es)
@@ -319,7 +317,7 @@ data VariableShiftPredictOp ss w vn
     deriving (Show, Eq, Ord)
 instance (ExprSet ss, Expr w, VarName vn)
     => Expr (VariableShiftPredictOp ss w vn)
-instance (CommonExprSet ss, CommonExpr w, VarName vn)
+instance (ExprSet ss, CommonExprSet ss, CommonExpr w, VarName vn)
     => CommonExpr (VariableShiftPredictOp ss w vn)
 instance ( VarName vn
          , VariableSet (MentionedVarsOf ss :++: MentionedVarsOf w)