qsem001 and qsemn001 fail in HEAD: #7497
GHC.Event.IntMap.highestBitMap reimplementation

Replaced the previous implementation due to licensing concerns. The new
implementation is a reimplementation by Clark Gaebel, based on the
public domain implementation at
http://graphics.stanford.edu/~seander/bithacks.html#RoundUpPowerOf2
fix qsem001 & qsemn001
unbreak qsem001/qsemn001
highestBitMask: use shiftRL instead of shiftR
Add fromIntegral/Word->Double and fromIntegral/Word-Float rules
remove unnecessary STM import
Define GHC.Read.expectP and Text.Read.Lex.expect

They are now used by TcGenDeriv
Add functions that compare singletons for equality (with evidence)
Merge branch 'master' of http://darcs.haskell.org/packages/base
Make sum and product INLINABLE

This was causing the bad behaviour in Trac #7507,
because 'sum' wasn't getting specialised to Int64.

It also deals with Trac #4321, which had the same cause.

This has a big effect on some nofib programs too:

--------------------------------------------------------------------------------
        Program           Allocs   Runtime   Elapsed  TotalMem
------------------------------------------------------------------------
     bernouilli            -2.6%     -2.0%     -2.0%     +0.0%
           fft2           -23.8%      0.09      0.09    -16.7%
          fluid            -4.4%      0.01      0.01     +0.0%
         hidden            -3.2%     +2.1%     +1.8%     +0.0%
      integrate           -38.0%    -47.7%    -47.7%     -1.0%
           x2n1           -30.2%      0.01      0.01    -50.0%
------------------------------------------------------------------------
            Min           -38.0%    -47.7%    -47.7%    -50.0%
            Max            +0.4%    +11.2%    +11.8%     +6.9%
 Geometric Mean            -1.3%     +0.2%     +0.2%     -0.8%
GHC.IO.Buffer: use memmove instead of memcpy in slideContents
BufferedIO: fix bug in writeBufNonBlocking introduced by commit 7d39e100

bufferAdjustL does nothing but update bufL, and set bufL = bufR = 0
when bufL == bufR.  It ignores the old bufL.

writeBufNonBlocking is currently unused.  It is only used to implement
flushWriteBuffer0, which is never called by base
(hPutBufNonBlocking uses a blocking flush).
Expose Data.Fixed.Fixed's constructor

Discussed on libraries@, and summarised in
http://www.haskell.org/pipermail/libraries/2012-December/019076.html
Clarify the wording of the 'insert' haddock; fixes #7421

Wording suggested by Bart Massey.
Fix Data.Fixed.Fixed's Read instance; fixes #7483
Remove unused import
Comment out IsEven, isEven, and friends, because the type is ambiguous

It will become un-ambiguous when Iavor teaches the type inference
engine to prove more things, but until then this stuff is not useful.
Merge branch 'master' of http://darcs.haskell.org//packages/base
Expose new threadWaitSTM functions in Control.Concurrent (see #7216).

Supports threadWaitReadSTM and threadWaitWriteSTM on Windows with the threaded runtime system.