1.6. Release notes for version 7.10.2

The 7.10.2 release is a bugfix release, with over 40+ bug fixes from users and contributors. The major bugfixes relative to 7.10.1 are listed below.

1.6.1. GHC

  • A bug which caused GHC to generate bad DWARF unwinding information has been fixed (issue #10236).

  • A bug which caused GHC's libffi.so library to be built with executable stacks on some platforms has been fixed (issue #10208).

  • A bus error on SPARC machines caused by misaligned data accesses in the RTS has been fixed.

  • A type-system bug which could allow a user to write unsafeCoerce has been fixed (issue #9858).

  • A bug which caused GHC to generate incorrect hyperlinks to documentation in Haddock has been fixed (#10206).

  • A bug in the typechecker which allowed erroneous programs using Coercible to typecheck has been fixed (issue #10285).

  • An issue which could cause the "Call Arity" analysis to perform poorly in general has been fixed (issue #10293).

  • Several dozen bugs in the new API annotations work have been fixed (issues #10395, #10363, #10358, #10357, #10315, #10314, #10312, and many more).

  • A regression which could cause the typechecker fail to properly simplify type-level terms has been fixed (issue #10321).

  • A bug which caused programs compiled with -flate-dmd-anal to crash at runtime has been fixed (issue #10288).

  • A bug which caused ARM/Linux binaries to be built with executable stacks has been fixed (issue #10369).

  • Several bugs in GHC's cross compilation support using LLVM have been fixed (#10275).

  • Several bugs in GHC's support for AArch64 have been fixed (such as issue #10264).

  • A bug which could cause GHC to generate incorrect code at runtime (generating an infinite loop exception) has been fixed (issue #10218).

1.6.2. Libraries

1.6.2.1. base

  • Version number 4.8.1.0 (was 4.8.0.0)

  • The Lifetime datatype (and its constructors) are now exported from GHC.Event.

1.6.2.2. Cabal

  • Version number 1.22.3.0 (was 1.22.2.0)

1.6.2.3. ghc

  • Several new constructors have been added to the AnnKeywordId datatype, in order to fix several problem with GHC's new support for API annotations (this should not regress or effect any clients of the GHC API not using these new features).

1.6.3. Known bugs

  • For issues dealing with language changes, please see the GHC 7.10 Migration Guide on the GHC wiki.

  • GHC's LLVM backend does not support LLVM 3.4 (issue #9929)

  • On Mac OS X, the -threaded Garbage Collector currently suffers from a large performance penalty due to a lack of system-specific optimization (issue #7602).

  • GHC's LLVM backend is currently incompatible with LLVM 3.4 (issue #9929).

  • GHCi fails to appropriately load .dyn_o files (issue #8736).

  • Not all cases of non-terminating type-level computation (with both recursive type families and recursive newtypes) are caught. This means that GHC might hang, but it should do so only when the program is ill-typed (due to non-terminating type-level features). The bugs are reported as #7788 and #10139. There also remain certain obscure scenarios where the solver for Coercible instances is known to be still incomplete. See comments in #10079.