Fix yet another bug in 'deriving' for polykinded classes (Trac #7269)

This patch makes the code a bit simpler if anything.
Add missing test file T7269
Replace DeriveDataTypeable by AutoDeriveTypeable

This is a first step towards addressing #9111

This results in the following additional Typeable (exported) instances
being generated (list was compiled by diff'ing hoogle txt output):

  instance Typeable CFile
  instance Typeable 'CFile
  instance Typeable CFpos
  instance Typeable 'CFpos
  instance Typeable CJmpBuf
  instance Typeable 'CJmpBuf
  instance Typeable ChItem
  instance Typeable QSem
  instance Typeable ID
  instance Typeable 'ID
  instance Typeable CONST
  instance Typeable Qi
  instance Typeable Qr
  instance Typeable Mp
  instance Typeable ConstrRep
  instance Typeable Fixity
  instance Typeable 'Prefix
  instance Typeable 'Infix
  instance Typeable Constr
  instance Typeable DataType
  instance Typeable DataRep
  instance Typeable Data
  instance Typeable HasResolution
  instance Typeable IsList

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Store IfExtNames for PatSyn matchers and wrappers in interface file.
This way, the Ids for the matchers/wrappers are reused by importing
modules, and thus unfoldings are kept.

Also updates haddock submodule to accomodate tweaks in PatSyn representation
Assert that matcher-derived PatSyn types match the (redundant) stored types in IfacePatSyn
Test Trac #9144
T4006, environment001, T3307 all work on msys2
Use mkTcEqPred rather than mkEqPred in the type checker

Type.mkEqPred has an assertion warning for kind compatibility.  But
during type checking we may form equality predicates with incompatible
kinds; hence TcType.mkTcEqPred, which does not check.  We were calling
the former instead of the latter in a couple of places, leading to
spurious debug warnings.
No need to call defaultKind in mkTcEqPred
Fix comment typo
Update Haddock submodule.

This doesn't make any actual changes as to what the source looked like
at previous commit we were pointing to but I made some foolish reverts
that I now have to accomodate for. Sorry!
Update T4891, T8639_api to follow 73c08ab10 (GHCi naming changes)

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Add .gitignore for autogenerated test files.

I used this shell command to automatically generate the lists:

for i in `git ls-files -o --exclude-standard --directory`; do echo "`basename $i`" >> "`dirname "$i"`/.gitignore"; done

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Fix bitrotted GHC API test T6145.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Add missing stderr file for tcrun045.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
s/implict/implicit/i

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Refresh recomp006 error message.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Remove obsolete -fno-warn-amp from spec001

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Per-capability nursery weak pointer lists, fixes #9075

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Disable FixEither tests in TcCoercible

This fixes #9153. It has not been noticed before because this
TcCoercible does not run with "make fast=YES"