Refactor checking for GADT-like datacons' return types

This check is somewhat subtle. See Note [Checking GADT return types]
in TcTyClsDecls. The new plan is to check *before* desugaring the type
from HsType to Type. This avoids problems with the pattern-match
in rejigConRes.

As a nice side benefit to this, I discovered that Template Haskell
splices were a little conservative in their treatment of valid data
constructors. (For example, a kind signature in the return type caused
failure.) Now, the TH code uses exactly the same function as the
"real" code, which is nice. See hsTyGetAppHead_maybe in HsTypes.
sync-all : Warn on 'pull' operation if not on master branch.
mk/config.mk.in : Add powerpc-unknown-linux to NoSharedLibsPlatformList.

Dynamic libraries on powerpc linux are currently broken.
See: http://hackage.haskell.org/trac/ghc/ticket/8024
.gitignore : Add libffi-tarballs.
Added support for writing and checking closed type families is hs-boot files.

As documented in the users' guide, you can now write

type family Foo a where ..

in a hs-boot file to declare an abstract closed type family.
sync-all : Replace '~~' operator with something supported by older Perl.
Rename SSE -> XMM for consistency.

We were using SSE is some places and XMM in others. Better to keep a consistent
naming scheme.
Only use real XMM registers when assigning arguments.

My original change to the calling convention mistakenly used all 6 XMM
registers---which live in the global register table---on x86 (32 bit). This
royally screwed up the floating point code generated for that platform because
floating point arguments were passed in global registers instead of on the
stack!
Normalize urls for Git submodules

This changes the `/libraries/<name>.git/` suffix in the urls
to `/packages/<name>.git`. This is a minor preparation step
helping the Gitolite transition (see #8121).

See also http://permalink.gmane.org/gmane.comp.lang.haskell.ghc.devel/1713
Make `sync-all remote set-url` use normalized `/packages/` urls

A simple heuristic (i.e. replacing the `libraries/` suffix by
`packages/` in the inferred remotepath, if the remotepath in the
`packages` file is "-") used to infer the remotepath for Git
submodules. A proper solution would require to parse the `.gitmodules`
file to obtain the actual localpath<->remotepath mapping.

This addresses #8121 and is a follow-up to a22e908 which changed the
`.gitmodules` urls to use the `/packages/` folder instead of
`/libraries/`.
sync-all: remove trailing '/' from root-urls in help text

This is a test commit for addressing #8121
Whitespace change to test Trac/Gitolite.

This references #8121

Signed-off-by: Austin Seipp <aseipp@pobox.com>
Fix typo

(this refs #8121 for testing purposes)
GHCi: Implement `%l` prompt substitution for line-number

This commit also updates the GHC user guide section
regarding the `set prompt` command and closes #8047.

Signed-off-by: Herbert Valerio Riedel <hvr@gnu.org>
Release notes for #8108.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
Mark retry# as returning bottom.

This change helps the simplifier eliminate unreachable code, since
retry# technically doesn't return.

This closes ticket #8091.

Authored-by: Patrick Palka <patrick@parcs.ath.cx>
Signed-off-by: Austin Seipp <aseipp@pobox.com>
Fix invalid users guide synax.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
Comments only
Add a missing untag to the non-updatable selector thunks (#7978)
Fix Stage1Only: don't build ghctags.

ghctags needs the stage2 compiler, since it uses the GHC API.

Fixes #8126.

Authored-by: Stephen Blackheath <...@blacksapphire.com>
Signed-off-by: Austin Seipp <aseipp@pobox.com>