projects
/
ghc-base.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use explicit language extensions & remove extension fields from base.cabal
[ghc-base.git]
/
Data
/
Typeable.hs
diff --git
a/Data/Typeable.hs
b/Data/Typeable.hs
index
40d07ac
..
804e853
100644
(file)
--- a/
Data/Typeable.hs
+++ b/
Data/Typeable.hs
@@
-1,4
+1,11
@@
-{-# OPTIONS_GHC -XNoImplicitPrelude -XOverlappingInstances -funbox-strict-fields #-}
+{-# LANGUAGE CPP
+ , NoImplicitPrelude
+ , OverlappingInstances
+ , ScopedTypeVariables
+ , ForeignFunctionInterface
+ , FlexibleInstances
+ #-}
+{-# OPTIONS_GHC -funbox-strict-fields #-}
-- The -XOverlappingInstances flag allows the user to over-ride
-- the instances for Typeable given here. In particular, we provide an instance
-- The -XOverlappingInstances flag allows the user to over-ride
-- the instances for Typeable given here. In particular, we provide an instance
@@
-93,10
+100,10
@@
import GHC.Base
import GHC.Show (Show(..), ShowS,
shows, showString, showChar, showParen)
import GHC.Err (undefined)
import GHC.Show (Show(..), ShowS,
shows, showString, showChar, showParen)
import GHC.Err (undefined)
-import GHC.Num (Integer, fromInteger, (+))
+import GHC.Num (Integer, (+))
import GHC.Real ( rem, Ratio )
import GHC.IORef (IORef,newIORef)
import GHC.Real ( rem, Ratio )
import GHC.IORef (IORef,newIORef)
-import GHC.IO (unsafePerformIO,block)
+import GHC.IO (unsafePerformIO,mask_)
-- These imports are so we can define Typeable instances
-- It'd be better to give Typeable instances in the modules themselves
-- These imports are so we can define Typeable instances
-- It'd be better to give Typeable instances in the modules themselves
@@
-681,7
+688,7
@@
cache = unsafePerformIO $ do
tc_tbl = empty_tc_tbl,
ap_tbl = empty_ap_tbl }
#ifdef __GLASGOW_HASKELL__
tc_tbl = empty_tc_tbl,
ap_tbl = empty_ap_tbl }
#ifdef __GLASGOW_HASKELL__
- block $ do
+ mask_ $ do
stable_ref <- newStablePtr ret
let ref = castStablePtrToPtr stable_ref
ref2 <- getOrSetTypeableStore ref
stable_ref <- newStablePtr ret
let ref = castStablePtrToPtr stable_ref
ref2 <- getOrSetTypeableStore ref