Revert "Add fmapCoerce to Functor class."

This reverts commit 3da4fd92e005cb9348ab2852d9268ad61ae1b347.

Signed-off-by: Austin Seipp <austin@well-typed.com>
Documentation for GHC.Generics
Define typeRep in terms of new Proxy#

Data.Typeable.Internal.Typeable now contains typeRep# - defined over
Proxy# - instead of typeRep, the latter now being a wrapper of the
former.

Authored-by: Edward Kmett <ekmett@gmail.com>
Authored-by: Austin Seipp <austin@well-typed.com>
Signed-off-by: Austin Seipp <austin@well-typed.com>
Fix comment typo introduced in 6368362f44
Add a few missing `{-# LANGUAGE CPP #-}`s

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Modernize and refactor `base.cabal`

 - removes the redundant `impl(ghc)` conditional
 - unifies the `exposed-modules` list
 - sorts lists alphabetically
 - convert to uniform `,`-less & line-oriented lists
   (helps reduce diff-noise in future)
 - remove obsolete `nhc98-options` field
 - avoid `{}`-style Cabal grammar
 - remove `extensions: CPP`
 - add `category` field to silence Cabal warning
 - add missing entries to `extra-source-files`
   (the source distribution wasn't buildable because of this!)
 - list all occuring `LANGUAGE` pragmas in `other-extensions`
 - explicitly declare `default-language: Haskell2010`

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Drop redundant `{-# LANGUAGE #-}` pragmas

This removes language pragmas from Haskell modules which are implicitly
active with `default-language: Haskell2010`. Specifically, the following
language extension pragmas are removed by this commit:

 - PatternGuards
 - ForeignFunctionInterface
 - EmptyDataDecls
 - NoBangPatterns

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Remove obsolete `include/Nhc98BaseConfig.h`

This is a left-over from f231a01d2217d31

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Add `/Since: 4.7.0.0/` to new entities in fc904366

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Add missing/remove redundant `{-# LANGUAGE CPP #-}`s

The `CPP` forgotten were in windows-specific modules, and the redundant
`CPP` files were removed in some `.hsc` files.

Note: `.hsc` files only require `{-# LANGUAGE CPP #-}` annotations if
they use `##`, as `hsc2hs` removes all non-escaped `#`-directives.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Expose performMinorGC (#8257)

Signed-off-by: Austin Seipp <austin@well-typed.com>
Fix name of minor GC function.

I accidentally forgot to commit this.

Signed-off-by: Austin Seipp <austin@well-typed.com>
System.IO.Unsafe: cleanup: make unsafeFixIO pseudocode more valid

Signed-off-by: Sergei Trofimovich <slyfox at gentoo.org>
Fix Windows build.

In dfb52c3d the default language was set to Haskell2010 - by default,
GHC is less strict about the layout rule (controlled by
-XNonincreasingIndentation), but not when we explicitly set the language
to H2010. It turns out we relied on this behavior in the Windows build.

Thanks to Reid Barton for pointing this out.

Signed-off-by: Austin Seipp <austin@well-typed.com>
Remove all but the basic operations on type-level literals.

The plan is to have the more sophisticated operations in a separate
library.
Rename someSymVal to someSymbolVal
Add fixity declaration for type-level functions.
Add `instance Monoid a => Monoid (Const a b)`

For more details, see original proposal at

 http://permalink.gmane.org/gmane.comp.lang.haskell.libraries/20369

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Port ThreadDelay001 to the "time" library

... as "old-time" isn't built when cross-compiling.

Issue #8395.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
Typo in documentation