From 87a57146adca00ea614969e6eb80bf5e25febeb5 Mon Sep 17 00:00:00 2001 From: Jens Nolte <git@queezle.net> Date: Tue, 24 Aug 2021 01:14:44 +0200 Subject: [PATCH] Change impossibleCodePathM to require MonadThrow Co-authored-by: Jan Beinke <git@janbeinke.com> --- src/Quasar/PreludeExtras.hs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Quasar/PreludeExtras.hs b/src/Quasar/PreludeExtras.hs index d70ab6c..689f488 100644 --- a/src/Quasar/PreludeExtras.hs +++ b/src/Quasar/PreludeExtras.hs @@ -8,6 +8,7 @@ import Prelude import Control.Applicative (liftA2) import Control.Concurrent (threadDelay) +import Control.Monad.Catch (MonadThrow, throwM) import Control.Monad.State.Lazy as State import Data.Char qualified as Char import Data.HashMap.Strict qualified as HM @@ -24,8 +25,8 @@ import Quasar.Utils.ExtraT impossibleCodePath :: GHC.Stack.Types.HasCallStack => a impossibleCodePath = error "Code path marked as impossible was reached" -impossibleCodePathM :: MonadFail m => m a -impossibleCodePathM = fail "Code path marked as impossible was reached" +impossibleCodePathM :: MonadThrow m => m a +impossibleCodePathM = throwM (userError "Code path marked as impossible was reached") intercalate :: (Foldable f, Monoid a) => a -> f a -> a intercalate inter = foldr1 (\a b -> a <> inter <> b) -- GitLab