Hi!
I've been working with GHC-4.6.3, and updating to GHC-4.8.3 breaks my code,
because the Typeable class has been changed. The compiler produces this
message:
---------
src/HsShellScript/ProcErr.chs:2294:4:
‘typeOf’ is not a (visible) method of class ‘Typeable’
---------
I want to define System.Posix.Process.ProcessStatus to be an instance of
Typeable, so I can throw and catch it as an exception. ProcessStatus isn't
typeable by default.
Is it still possible to make ProcessStatus a member of Typeable? How?
Obviously, you can't accomplish it by deriving Typeable, because the definition
can't be changed any longer.
This is the spot in question:
----------
import System.Posix.Process
import Data.Typeable
{-
data ProcessStatus = Exited ExitCode
| Terminated Signal
| Stopped Signal
deriving (Eq, Ord, Show)
-}
instance Typeable ProcessStatus where
typeOf = const tyCon_ProcessStatus
tyCon_ProcessStatus = mkTyConApp (mkTyCon3 "hsshellscript"
"HsShellScript.ProcErr"
"Posix.ProcessStatus") []
instance Exception ProcessStatus
----------
Thanks,
V.W.