diff --git a/ghc/lib/std/PrelArr.lhs b/ghc/lib/std/PrelArr.lhs index 5f93a937ba8e570b7d1ced4428179a6a684dcb78..b8b1b105e88f77c4ce9dcee91ff17c9147a6957b 100644 --- a/ghc/lib/std/PrelArr.lhs +++ b/ghc/lib/std/PrelArr.lhs @@ -117,7 +117,7 @@ bounds (Array b _) = b = let n# = case (index bounds i) of { I# x -> x } -- index fails if out of range in case (indexArray# arr# n#) of - (# _, v #) -> v + (# v #) -> v #ifdef USE_FOLDR_BUILD {-# INLINE array #-} @@ -633,7 +633,7 @@ thawArray (Array ixs arr#) = ST $ \ s# -> | cur# ==# end# = (# st#, to# #) | otherwise - = case indexArray# from# cur# of { (# _, ele #) -> + = case indexArray# from# cur# of { (# ele #) -> case writeArray# to# cur# ele st# of { s1# -> copy (cur# +# 1#) end# from# to# s1# }}