Revert "Note infinite stack default in release notes."

This reverts commit c798a8c6c66d826efdc0201fa56d45337eecc2af.
Merge remote-tracking branch 'origin/master' into ghc-parmake-gsoc
Remove -fwarn-typeable-instances
Fix optimization of Parser.y.pp

In 9e133b, the build was modified to pass -fcmm-sink to Parser, but
unfortunately Parser specifies -O0 in its OPTIONS_GHC directive, meaning
the sinking pass was actually turned off.

HC_OPTS is the last thing passed to the compiler for that source file
however, so the correct fix is to also move -O0 out into the build
system as well.

This was uncovered thanks to a build report from Kazu Yamamoto. Thanks
to Jan Stolarek for eyeballing this bug and finding it.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
Clarification in formalism concerning roles.
Revision to release notes for the new Typeable.
Merge branch 'ghc-parmake-gsoc' (#910)
Fix ./validate with GHC 7.6 as bootstrap compiler.

7.6 deprecated the Control.Concurrent.QSem module (to be removed later,)
but according to Patrick it was actually un-deprecated. As a result,
validate fails if your bootstrap compiler is 7.6, since it throws a
DEPRECATED warning.

Signed-off-by: Austin Seipp <austin@well-typed.com>
Add release notes for parallel compilation driver.

Signed-off-by: Austin Seipp <austin@well-typed.com>
Typo fix. Spotted by Mikhail Glushenkov.

Signed-off-by: Austin Seipp <austin@well-typed.com>
More release note fixes.

This is what I get for being so hasty for release notes.

Signed-off-by: Austin Seipp <austin@well-typed.com>
Remove dead code
Improve -flate-dmd-anal documentation
Comments only
Improve the insolubility check when quantifying

See Note [Quantification with errors]
Fixes Trac #8262
Improve error reporting for "relevant bindings" again (Trac #8233)

This patch makes a number of related improvements:

* Displays relevant bindings in innermost-first order.
  The inner ones are closer to the error.

* Does not display syntactically top-level bindings,
  unless you say -fno-max-relevant-bindings.
  This is what Trac #8233 was mainly about

* Makes the TopLevelFlag in a TcIdBinder really mean
  "syntactically top level".  It was a bit vague before.

There was some associated simplification, because we no longer
need to pas a TopLevelFlag to tcMonoBinds and friends.
Test Trac #8227
Error message wibbles

Almost all are re-orderings of relevant-binding output

       Relevant bindings include
  +      m :: Map (a, b) elt (bound at T3169.hs:12:17)
  +      b :: b (bound at T3169.hs:12:13)
         lookup :: (a, b) -> Map (a, b) elt -> Maybe elt
           (bound at T3169.hs:12:3)
  -      b :: b (bound at T3169.hs:12:13)
  -      m :: Map (a, b) elt (bound at T3169.hs:12:17)
Test Trac #8262
factor 'tcRnModuleTcRnM' out of 'tcRnModule' and export it

'tcRnModuleTcRnM' builds the TcRnM monad computation that is the bulk of
'tcRnModule'

This commit makes it simpler for courageous Core plugins to invoke the
typechecker. In particular, they no longer need to copy-and-paste what is now
the body of 'tcRnModuleTcRnM'. The key change is that the 'tcRnModuleTcRnM'
computation can be run with (a hypothetical) 'initTcFromCoreM' instead of
'initTc'.