@@ -51,7 +51,7 @@ module Data.Text.Internal.Fusion
5151
5252import Prelude (Bool(..), Char, Maybe(..), Monad(..), Int,
5353 Num(..), Ord(..), ($), (&&),
54− fromIntegral, otherwise, quot)
54+ fromIntegral, otherwise)
5555import Data.Bits ((.&.))
5656import Data.Text.Internal (Text(..))
5757import Data.Text.Internal.Private (runText)
@@ -68,7 +68,7 @@ default(Int)
6868
6969-- | /O(n)/ Convert a 'Text' into a 'Stream Char'.
7070stream :: Text -> Stream Char
71−stream (Text arr off len) = Stream next off (betweenSize (len `quot` 2) len)
71+stream (Text arr off len) = Stream next off (betweenSize (len `shiftR` 1) len)
7272 where
7373 !end = off+len
7474 next !i
@@ -83,7 +83,7 @@ stream (Text arr off len) = Stream next off (betweenSize (len `quot` 2) len)
8383-- | /O(n)/ Convert a 'Text' into a 'Stream Char', but iterate
8484-- backwards.
8585reverseStream :: Text -> Stream Char
86−reverseStream (Text arr off len) = Stream next (off+len-1) (betweenSize (len `quot` 2) len)
86+reverseStream (Text arr off len) = Stream next (off+len-1) (betweenSize (len `shiftR` 1) len)
8787 where
8888 {-# INLINE next #-}
8989 next !i