summaryrefslogtreecommitdiff
path: root/docs/users_guide/8.10.7-notes.rst
blob: ddc5b60b4da954c077fa317761c4798299e4bbe0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
.. _release-8-10-7:
Release notes for version 8.10.7
================================

The significant changes to the various parts of the compiler are listed in the
following sections.

The :ghc-flag:`LLVM backend <-fllvm>` of this release is to be used with LLVM versions 9
through 12.

Portability fixes
-----------------

- Actually fix a linking portability issue on macOS that resulted in undefined
  symbol errors for ``___darwin_check_fd_set_overflow`` (:ghc-ticket:`19950`),
  working around a bug in certain versions of XCode 11.
  We claimed to have fixed this in GHC 8.10.6, but alas this wasn't the case. The
  fix was originally tested on the master branch, which uses a different build
  configuration from the 8.10 branch. We have now tested the fix on the GHC 8.10
  branch and finally squashed the bug.

Known issues
------------

- A long-standing bug (:ghc-ticket:`16893`) which can cause some applications
  of ``unsafeCoerce`` to segmentation fault is only partially fixed in this
  release. This release only avoids this issue in the uses of ``unsafeCoerce``
  in ``Data.Typeable.Internal``, which was the proximate cause of
  :ghc-ticket:`16893`.

  However, it is possible that this bug could manifest in user-code using
  ``unsafeCoerce`` to perform dynamic type checks. See the :ghc-ticket:`ticket
  <16893>` for details.

  We expect that this issue will be fixed in the next major release of GHC.

- A long-standing bug (:ghc-ticket:`17760`) where some uses of the ``touch#``
  primop can be dropped by the simplifier is present in this release. This bug
  will be fixed in GHC 9.0.1. In the meantime, see the :ghc-ticket:`ticket
  <17760>` for mitigations.


Included libraries
------------------

The package database provided with this distribution also contains a number of
packages other than GHC itself. See the changelogs provided with these packages
for further change information.

.. ghc-package-list::

    libraries/array/array.cabal:             Dependency of ``ghc`` library
    libraries/base/base.cabal:               Core library
    libraries/binary/binary.cabal:           Dependency of ``ghc`` library
    libraries/bytestring/bytestring.cabal:   Dependency of ``ghc`` library
    libraries/Cabal/Cabal/Cabal.cabal:       Dependency of ``ghc-pkg`` utility
    libraries/containers/containers/containers.cabal:   Dependency of ``ghc`` library
    libraries/deepseq/deepseq.cabal:         Dependency of ``ghc`` library
    libraries/directory/directory.cabal:     Dependency of ``ghc`` library
    libraries/exceptions/exceptions.cabal:   Dependency of ``haskeline`` library
    libraries/filepath/filepath.cabal:       Dependency of ``ghc`` library
    compiler/ghc.cabal:                      The compiler itself
    libraries/ghci/ghci.cabal:               The REPL interface
    libraries/ghc-boot/ghc-boot.cabal:       Internal compiler library
    libraries/ghc-boot-th/ghc-boot-th.cabal: Internal compiler library
    libraries/ghc-compact/ghc-compact.cabal: Core library
    libraries/ghc-heap/ghc-heap.cabal:       GHC heap-walking library
    libraries/ghc-prim/ghc-prim.cabal:       Core library
    libraries/haskeline/haskeline.cabal:     Dependency of ``ghci`` executable
    libraries/hpc/hpc.cabal:                 Dependency of ``hpc`` executable
    libraries/integer-gmp/integer-gmp.cabal: Core library
    libraries/libiserv/libiserv.cabal:       Internal compiler library
    libraries/mtl/mtl.cabal:                 Dependency of ``Cabal`` library
    libraries/parsec/parsec.cabal:           Dependency of ``Cabal`` library
    libraries/pretty/pretty.cabal:           Dependency of ``ghc`` library
    libraries/process/process.cabal:         Dependency of ``ghc`` library
    libraries/stm/stm.cabal:                 Dependency of ``haskeline`` library
    libraries/template-haskell/template-haskell.cabal:     Core library
    libraries/terminfo/terminfo.cabal:       Dependency of ``haskeline`` library
    libraries/text/text.cabal:               Dependency of ``Cabal`` library
    libraries/time/time.cabal:               Dependency of ``ghc`` library
    libraries/transformers/transformers.cabal: Dependency of ``ghc`` library
    libraries/unix/unix.cabal:               Dependency of ``ghc`` library
    libraries/Win32/Win32.cabal:             Dependency of ``ghc`` library
    libraries/xhtml/xhtml.cabal:             Dependency of ``haddock`` executable