1.7. Release notes for version 7.10.3

The 7.10.3 release is a bugfix release, with over fifty bug fixes relative to 7.10.2. The major fixes are listed below. For the full list with more detail, see the GHC 7.10.3 milestone on our bug tracker.

1.7.1. GHC

  • The simplifier no longer simplifies rewrite rules.

    Starting with 7.10.2 GHC would simplify both the left- and right-hand-sides of rewrite rules, causing a variety of unexpected behavior. Simplification of the LHS resulted in various rules to fail to fire (Trac #10528, in particular affecting the widely used text library) whereas rewrites of the RHS broke some of the more exotic uses of rewrite rules (e.g. HERMIT, Trac #10829).

  • A bug in the simplifier's treatment of phantom type variables in rules resulting in a compiler-crash has been fixed. (Trac #10689).

  • A simplifier bug resulting in incorrect results when comparing against -0.0 has been fixed (Trac #9238).

  • The compiler is now better able to work around platform limits on command-line length on Windows thanks to support for response files (Trac #10375) and an upgrade to the GCC toolchain (Trac #10726)

  • The linker is now far less verbose when faced with certain warning conditions on Windows. (Trac #9297).

  • Framework flags are now included in the linker command line on Mac OS X (Trac #10568).

  • Compiler error messages containing Unicode characters no longer crash the compiler on platforms without Unicode support. (Trac #6037).

  • ARM support should be substantially more reliable as the compiler now takes precautions to avoid linking against Thumb code (Trac #10375). Unfortunately the fix involved breaking some configurations. See the entry in the "Known Bugs" section below.

  • A bug in the typechecker's treatment of PartialTypeSignatures which previously resulted in a compile-time crash has been fixed. (Trac #10438).

  • A typechecker bug leading to the compiler crashing has been resolved (Trac #10489).

  • Due to a security issue , Safe Haskell now forbids annotations in programs marked as -XSafe

  • The template Haskell getQ and putQ functions are fixed (having been broken since GHC 7.10.1, (Trac #10596).

1.7.2. Libraries

1.7.2.1. base

  • Version number 4.8.2.0 (was 4.8.1.0)

  • The GiveGCStats, DoCostCentres, DoHeapProfile, DoTrace, Time, and Nat datatypes are now exported from GHC.RTS.Flags.

1.7.3. Known bugs

  • At the time of release there is a fix in the Cabal upstream respository, although it is not yet present in a release.

  • Unfortunately the fix for Trac #10375 required that support for the ARM Thumb instruction set be disabled. See Trac #11058 for details.