So the result of folding is a function to which we finally pass the
right unit.
-With the @-fglasgow-exts@ option, GHC can generate instances of the
+With the @-XDeriveDataTypeable@ option, GHC can generate instances of the
'Data' class automatically. For example, given the declaration
> data T a b = C1 a b | C2 deriving (Typeable, Data)
some programs may get away without consulting GHC.Tup). Furthermore,
the renamer currently *always* asks for () to be in scope, so that
ccalls can use () as their default type; so when compiling GHC.Base we
-need (). (We could arrange suck in () only if -fglasgow-exts, but putting
-it here seems more direct.)
+need (). (We could arrange suck in () only if -XForeignFunctionInterface,
+but putting it here seems more direct.)
\begin{code}
-- | The unit datatype @()@ has one non-undefined member, the nullary
-{-# OPTIONS -fglasgow-exts #-}
-------------------------------------------------------------------------------
-- |
-- Module : System.Timeout
-{-# OPTIONS_GHC -fglasgow-exts -XNoImplicitPrelude #-}
+{-# OPTIONS_GHC -XNoImplicitPrelude #-}
-----------------------------------------------------------------------------
-- |
-- Module : Text.ParserCombinators.ReadP