diff options
author | Matthew Pickering <matthewtpickering@gmail.com> | 2016-10-04 22:36:55 +0100 |
---|---|---|
committer | Matthew Pickering <matthewtpickering@gmail.com> | 2016-10-04 22:37:47 +0100 |
commit | c5d62883b3a7c93c28017b57f81165b6f71d9340 (patch) | |
tree | 67b01d396c5f6cbcdf497c9456887ce9783284e4 | |
parent | 7a6731c200f1fd22f5f12f6a2cbc8a22e5225d84 (diff) | |
download | haskell-c5d62883b3a7c93c28017b57f81165b6f71d9340.tar.gz |
Mark zipWithAndUnzipM as INLINABLE rather than INLINE
It is a self-recursive function and hence a loop-breaker.
-rw-r--r-- | compiler/utils/MonadUtils.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/utils/MonadUtils.hs b/compiler/utils/MonadUtils.hs index d1c0adb456..93a835e04e 100644 --- a/compiler/utils/MonadUtils.hs +++ b/compiler/utils/MonadUtils.hs @@ -93,7 +93,7 @@ zipWith4M f (x:xs) (y:ys) (z:zs) (a:as) zipWithAndUnzipM :: Monad m => (a -> b -> m (c, d)) -> [a] -> [b] -> m ([c], [d]) -{-# INLINE zipWithAndUnzipM #-} +{-# INLINABLE zipWithAndUnzipM #-} -- See Note [flatten_many performance] in TcFlatten for why this -- pragma is essential. zipWithAndUnzipM f (x:xs) (y:ys) |