Small refactoring in the generation of superclasses.
Preserve synonyms if possible (leads to better error messages) through flattening.
Keeping Derived constraints in the unsolved
parts of WantedConstraints, and other small refactorings.
Cleaning up the extractUnsolved story.
Merge branch 'master' of http://darcs.haskell.org/ghc
Update to time 1.4.0.1
Update dependencies.
Bump version to 7.6.0
The dph libraries are not required in the 7.6 branch

And we don't build them by default, as they shouldn't go into the
release.
Fix references to repositories in the user guide
Fix build on Windows: Configure packages in the right order

Also added a comment explaining that addPackages need to be in
dependency order.
Do calcUnfoldingGuidance on the *non* occ-analysed RHS

See Note [Calculate unfolding guidance on the non-occ-anal'd expression]
This makes a big difference to residency (530M vs over 800M when compiling
Cabal).

This fixes the majority of the regression in Trac #6104

MERGED from commit cd627bcfda713efa63b7f5290c84a5077f4976f9
Add cast to placate gcc 4.6 on linux-powerpc (#7113).

MERGED from commit 50f5016a67060538a5272cd5fa6f4532d0396ef2
Fix a bug in the handling of recent_activity

The problem occurred when the idle GC was turned off with +RTS -I0.
Then the scheduler would go into the state ACTIVITY_DONE_GC directly
without doing a GC, and a subsequent GC would put it back to
ACTIVITY_YES but without turning the timer back on.  Instead if the GC
finds the state is ACTIVITY_DONE_GC it should leave it there.

MERGED from commit 396f09031b363bf2f0d2afa28a86e67a0628a696
Update release notes for GHC and base.
Don't pass -Wimplicit to the C++ compiler.

Supresses an ugly warning from gcc 4.6+ saying this is a C/ObjC flag
only.

Signed-off-by: Austin Seipp <mad.one@gmail.com>

MERGED from commit a0e308de485bdb275008a40de9c76c31230e6c51
Update 'unboxed tuples' section of users guide.

In particular, many of the restrictions on using unboxed tuples went
away thanks to Max Bolingbroke, and they can now be bound to variables
without pattern matching, and passed as arguments.

Also fix a little formatting in glasgow-exts.xml. Some other parts
of this section may be out of date.

Signed-off-by: Austin Seipp <mad.one@gmail.com>

MERGED from commit 7473c3d291742175e2e2a4ba98f0c1dba5393599
Fix ambiguous flag resolution (#7138)

Pick longest flag when more than one matches in findArg.

This fixes an issue where -ignore-dot-ghci wasn't honored, because the
flag was parsed as "-i gnore-dot-ghci".

MERGED from commit f78b31a36b5b49afbdea199269319faca261c898
Add UnboxedTuples changes to release notes.
Fix GHCi segfault during startup on linux-powerpc (#2972).

Slightly modified version of a patch from Ben Collins <bcollins@ubuntu.com>
who did the final debugging that showed the segfault was being caused the
memory protection mechanism.

Due to the requirement of "jump islands" to handle 24 bit relative jump
offsets, GHCi on PowerPC did not use mmap to load object files like the
other architectures. Instead, it allocated memory using malloc and fread
to load the object code. However there is a quirk in the GNU libc malloc
implementation. For memory regions over certain size (dynamic and
configurable), malloc will use mmap to obtain the required memory instead
of sbrk and malloc's call to mmap sets the memory readable and writable,
but not executable. That means when GHCi loads code into a memory region
that was mmapped instead of malloc-ed and tries to execute it we get a
segfault.

This solution drops the malloc/fread object loading in favour of using
mmap and then puts the jump island for each object code module at the
end of the mmaped region for that object.

This patch may also be a solution on other ELF based powerpc systems
but does not work on darwin-powerpc.

MERGED from commit 3e6c9308777caf83122baef504028d619d3dd588