diff --git a/src/Control/Abstract/Analysis.hs b/src/Control/Abstract/Analysis.hs index 917db86dc..c9d03d8cd 100644 --- a/src/Control/Abstract/Analysis.hs +++ b/src/Control/Abstract/Analysis.hs @@ -63,7 +63,6 @@ evaluateTerm = foldSubterms (analyzeTerm eval) type MonadEvaluatable term value m = ( Evaluatable (Base term) , FreeVariables term - , Monad m , MonadAddressable (LocationFor value) value m , MonadAnalysis term value m , MonadThrow Prelude.String value m diff --git a/src/Data/Abstract/Value.hs b/src/Data/Abstract/Value.hs index 3b9c60d65..df6e47aa0 100644 --- a/src/Data/Abstract/Value.hs +++ b/src/Data/Abstract/Value.hs @@ -153,8 +153,7 @@ instance ValueRoots Value where -- | Construct a 'Value' wrapping the value arguments (if any). -instance MonadEvaluatable term Value m => MonadValue Value m where - +instance (Monad m, MonadEvaluatable term Value m) => MonadValue Value m where unit = pure . injValue $ Unit integer = pure . injValue . Data.Abstract.Value.Integer . Number.Integer boolean = pure . injValue . Boolean