6.2.2 fixes
This commit is contained in:
parent
8aa4659aaf
commit
1e80e35463
@ -31,11 +31,13 @@ module AltData.Dynamic (
|
||||
fromDyn, -- :: Typeable a => Dynamic -> a -> a
|
||||
fromDynamic, -- :: Typeable a => Dynamic -> Maybe a
|
||||
|
||||
#if __GLASGOW_HASKELL__ >= 603
|
||||
-- * Applying functions of dynamic type
|
||||
dynApply,
|
||||
dynApp,
|
||||
dynTypeRep
|
||||
|
||||
#endif
|
||||
) where
|
||||
|
||||
import AltData.Typeable
|
||||
@ -45,7 +47,9 @@ import System.IO.Unsafe (unsafePerformIO)
|
||||
|
||||
import GHC.Base
|
||||
import GHC.Show
|
||||
#if __GLASGOW_HASKELL__ >= 603
|
||||
import GHC.Err
|
||||
#endif
|
||||
|
||||
unsafeCoerce :: a -> b
|
||||
unsafeCoerce = unsafeCoerce#
|
||||
@ -135,6 +139,8 @@ fromDynamic (Dynamic t v) =
|
||||
"\n\tInferred type: " ++show t
|
||||
) `seq` Nothing
|
||||
|
||||
#if __GLASGOW_HASKELL__ >= 603
|
||||
|
||||
-- (f::(a->b)) `dynApply` (x::a) = (f a)::b
|
||||
dynApply :: Dynamic -> Dynamic -> Maybe Dynamic
|
||||
dynApply (Dynamic t1 f) (Dynamic t2 x) =
|
||||
@ -142,6 +148,7 @@ dynApply (Dynamic t1 f) (Dynamic t2 x) =
|
||||
Just t3 -> Just (Dynamic t3 ((unsafeCoerce f) x))
|
||||
Nothing -> Nothing
|
||||
|
||||
|
||||
dynApp :: Dynamic -> Dynamic -> Dynamic
|
||||
dynApp f x = case dynApply f x of
|
||||
Just r -> r
|
||||
@ -151,3 +158,5 @@ dynApp f x = case dynApply f x of
|
||||
|
||||
dynTypeRep :: Dynamic -> TypeRep
|
||||
dynTypeRep (Dynamic tr _) = tr
|
||||
|
||||
#endif
|
||||
|
@ -26,12 +26,13 @@ include ../build.mk
|
||||
|
||||
HC_OPTS += -package-conf $(TOP)/plugins.conf.inplace
|
||||
HC_OPTS += -package altdata -package hi
|
||||
HC_OPTS += -package Cabal
|
||||
HC_OPTS += -O -funbox-strict-fields
|
||||
HC_OPTS += -Wall -fno-warn-missing-signatures
|
||||
|
||||
ifeq ($(GLASGOW_HASKELL),602)
|
||||
HC_OPTS += -package posix
|
||||
else
|
||||
HC_OPTS += -package Cabal
|
||||
endif
|
||||
|
||||
install: install-me
|
||||
|
Loading…
x
Reference in New Issue
Block a user