diff options
| author | simonm <unknown> | 1997-12-04 14:55:29 +0000 | 
|---|---|---|
| committer | simonm <unknown> | 1997-12-04 14:55:29 +0000 | 
| commit | 0db1f01c3b3c65d5c5835109fda4ac0de2a978e1 (patch) | |
| tree | d42bb0619b03713f7e39dfc2eaa411923c932567 /ghc/lib | |
| parent | 2caf4c69ddfb11eff5f92c904420ba15f6054fb8 (diff) | |
| download | haskell-0db1f01c3b3c65d5c5835109fda4ac0de2a978e1.tar.gz | |
[project @ 1997-12-04 14:55:29 by simonm]
lazify strictToLazyST a bit.
Diffstat (limited to 'ghc/lib')
| -rw-r--r-- | ghc/lib/glaExts/LazyST.lhs | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/ghc/lib/glaExts/LazyST.lhs b/ghc/lib/glaExts/LazyST.lhs index b8480dfa2a..4c44e30ab4 100644 --- a/ghc/lib/glaExts/LazyST.lhs +++ b/ghc/lib/glaExts/LazyST.lhs @@ -100,8 +100,11 @@ unsafeFreezeSTArray (STArray arr) = strictToLazyST (unsafeFreezeArray arr)  strictToLazyST :: STBase.ST s a -> ST s a  strictToLazyST (STBase.ST m) = ST $ \s -> -        let STBase.S# s# = s in -	case m s# of { STBase.STret s2# r -> (r, STBase.S# s2#) } +        let  +	    STBase.S# s# = s +	    STBase.STret s2# r = m s#  +	in +	(r, STBase.S# s2#)  lazyToStrictST :: ST s a -> STBase.ST s a  lazyToStrictST (ST m) = STBase.ST $ \s ->  | 
