From: ross Date: Mon, 5 Jan 2004 17:44:30 +0000 (+0000) Subject: [project @ 2004-01-05 17:44:30 by ross] X-Git-Tag: nhc98-1-18-release~415 X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=7d6bb776112c8f538e91c56ebe5c4e071f2369e4;p=ghc-base.git [project @ 2004-01-05 17:44:30 by ross] Make runST(U)Array work with Hugs. This includes explicitly using unsafeFreezeSTArray rather than unsafeFreeze, to avoid relying on rules. --- diff --git a/Data/Array/ST.hs b/Data/Array/ST.hs index e8de28f..42829f9 100644 --- a/Data/Array/ST.hs +++ b/Data/Array/ST.hs @@ -34,11 +34,12 @@ import Data.Array.Base ( STUArray, castSTUArray, UArray, unsafeFreezeSTUArray ) import Control.Monad.ST ( ST, runST ) #ifdef __HUGS__ -import Hugs.ST ( STArray ) +import Hugs.Array ( Array ) +import Hugs.ST ( STArray, unsafeFreezeSTArray ) #endif #ifdef __GLASGOW_HASKELL__ -import GHC.Arr ( STArray, Array ) +import GHC.Arr ( STArray, Array, unsafeFreezeSTArray ) #endif -- | A safe way to create and work with a mutable array before returning an @@ -49,7 +50,7 @@ import GHC.Arr ( STArray, Array ) runSTArray :: (Ix i) => (forall s . ST s (STArray s i e)) -> Array i e -runSTArray st = runST (st >>= unsafeFreeze) +runSTArray st = runST (st >>= unsafeFreezeSTArray) -- | A safe way to create and work with an unboxed mutable array before -- returning an immutable array for later perusal. This function