Ben Gamari pushed to branch wip/backports-9.14 at Glasgow Haskell Compiler / GHC

Commits:

1 changed file:

Changes:

  • docs/users_guide/9.14.1-notes.rst
    ... ... @@ -52,7 +52,7 @@ Language
    52 52
     
    
    53 53
       That will break the combination of :extension:`OverloadedRecordUpdate` with :extension:`RebindableSyntax`.
    
    54 54
     
    
    55
    -* Multiline strings are now accepted in foreign imports. (#25157)
    
    55
    +* Multiline strings are now accepted in ``foreign import``\ s. (#25157)
    
    56 56
     
    
    57 57
     * GHC now does a better job at inferring types in calls to ``coerce``: instead of
    
    58 58
       complaining about ambiguous type variables, GHC will consider that such type
    
    ... ... @@ -73,7 +73,7 @@ Language
    73 73
     * The ``-Wdata-kinds-tc`` warning has been deprecated, and the use of promoted
    
    74 74
       data types in kinds is now an error (rather than a warning) unless the
    
    75 75
       :extension:`DataKinds` extension is enabled. For example, the following code
    
    76
    -  will be rejected unless :extension:`DataKinds` is on:
    
    76
    +  will be rejected unless :extension:`DataKinds` is on: ::
    
    77 77
     
    
    78 78
         import Data.Kind (Type)
    
    79 79
         import GHC.TypeNats (Nat)
    
    ... ... @@ -143,14 +143,14 @@ Compiler
    143 143
       were accessed using the generated record selector functions, marking the fields
    
    144 144
       as covered in coverage reports (:ghc-ticket:`17834`).
    
    145 145
     
    
    146
    -- SIMD support in the X86 native code generator has been extended with 128-bit
    
    146
    +- SIMD support in the x86 native code generator has been extended with 128-bit
    
    147 147
       integer operations.  Also, ``shuffleFloatX4#`` and ``shuffleDoubleX2#`` no longer
    
    148 148
       require ``-mavx``.
    
    149 149
     
    
    150 150
     GHCi
    
    151 151
     ~~~~
    
    152 152
     
    
    153
    -- :ghci-cmd:`:info` now outputs type declarations with @-binders that are
    
    153
    +- :ghci-cmd:`:info` now outputs type declarations with ``@``-binders that are
    
    154 154
       considered semantically significant. See the documentation for :ghci-cmd:`:info`
    
    155 155
       itself for a more detailed explanation.
    
    156 156
     
    
    ... ... @@ -176,40 +176,40 @@ Cmm
    176 176
     ``ghc`` library
    
    177 177
     ~~~~~~~~~~~~~~~
    
    178 178
     
    
    179
    -* The `UnknownDiagnostic` constructor now takes an additional type argument
    
    179
    +* The ``UnknownDiagnostic`` constructor now takes an additional type argument
    
    180 180
       for the type of hints corresponding to the diagnostic, and an additional
    
    181 181
       value-level argument used for existential wrapping of the hints of the inner
    
    182 182
       diagnostic.
    
    183 183
     
    
    184 184
     * Changes to the HPT and HUG interface:
    
    185 185
     
    
    186
    -  - `addToHpt` and `addListToHPT` were moved from `GHC.Unit.Home.ModInfo` to `GHC.Unit.Home.PackageTable` and deprecated in favour of `addHomeModInfoToHpt` and `addHomeModInfosToHpt`.
    
    187
    -  - `UnitEnvGraph` and operations `unitEnv_lookup_maybe`, `unitEnv_foldWithKey, `unitEnv_singleton`, `unitEnv_adjust`, `unitEnv_insert`, `unitEnv_new` were moved from `GHC.Unit.Env` to `GHC.Unit.Home.Graph`.
    
    188
    -  - The HomePackageTable (HPT) is now exported from `GHC.Unit.Home.PackageTable`,
    
    186
    +  - ``addToHpt`` and ``addListToHPT`` were moved from ``GHC.Unit.Home.ModInfo`` to ``GHC.Unit.Home.PackageTable`` and deprecated in favour of ``addHomeModInfoToHpt`` and ``addHomeModInfosToHpt``.
    
    187
    +  - ``UnitEnvGraph`` and operations ``unitEnv_lookup_maybe``, ``unitEnv_foldWithKey, ``unitEnv_singleton``, ``unitEnv_adjust``, ``unitEnv_insert``, ``unitEnv_new`` were moved from ``GHC.Unit.Env`` to ``GHC.Unit.Home.Graph``.
    
    188
    +  - The HomePackageTable (HPT) is now exported from ``GHC.Unit.Home.PackageTable``,
    
    189 189
         and is now backed by an IORef to avoid by construction very bad memory leaks.
    
    190 190
         This means the API to the HPT now is for the most part in IO. For instance,
    
    191
    -    `emptyHomePackageTable` and `addHomeModInfoToHpt` are now in IO.
    
    192
    -  - `mkHomeUnitEnv` was moved to `GHC.Unit.Home.PackageTable`, and now takes two
    
    193
    -    extra explicit arguments. To restore previous behaviour, pass `emptyUnitState`
    
    194
    -    and `Nothing` as the first two arguments additionally.
    
    195
    -  - `hugElts` was removed. Users should prefer `allUnits` to get the keys of the
    
    196
    -    HUG (the typical use case), or `traverse` or `unitEnv_foldWithKey` in other
    
    191
    +    ``emptyHomePackageTable`` and ``addHomeModInfoToHpt`` are now in IO.
    
    192
    +  - ``mkHomeUnitEnv`` was moved to ``GHC.Unit.Home.PackageTable``, and now takes two
    
    193
    +    extra explicit arguments. To restore previous behaviour, pass ``emptyUnitState``
    
    194
    +    and ``Nothing`` as the first two arguments additionally.
    
    195
    +  - ``hugElts`` was removed. Users should prefer ``allUnits`` to get the keys of the
    
    196
    +    HUG (the typical use case), or ``traverse`` or ``unitEnv_foldWithKey`` in other
    
    197 197
         cases.
    
    198 198
     
    
    199
    -* Changes to `Language.Haskell.Syntax.Expr`
    
    199
    +* Changes to ``Language.Haskell.Syntax.Expr``
    
    200 200
     
    
    201
    -  - The `ParStmtBlock` list argument of the `ParStmt` constructor of `StmtLR` is now `NonEmpty`.
    
    201
    +  - The ``ParStmtBlock`` list argument of the ``ParStmt`` constructor of ``StmtLR`` is now ``NonEmpty``.
    
    202 202
     
    
    203
    -* As part of the implementation of `GHC proposal 493 <https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0493-specialise-expressions.rst>`_,
    
    204
    -  the `SpecSig` constructor of `Sig` has been deprecated. It is replaced by
    
    205
    -  the constructor `SpecSigE` which supports expressions at the head, rather than
    
    203
    +* As part of the implementation of ``GHC proposal 493 <https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0493-specialise-expressions.rst>``_,
    
    204
    +  the ``SpecSig`` constructor of ``Sig`` has been deprecated. It is replaced by
    
    205
    +  the constructor ``SpecSigE`` which supports expressions at the head, rather than
    
    206 206
       a lone variable.
    
    207 207
     
    
    208 208
     ``ghc-heap`` library
    
    209 209
     ~~~~~~~~~~~~~~~~~~~~
    
    210 210
     
    
    211
    -* The functions `getClosureInfoTbl_maybe`, `getClosureInfoTbl`,
    
    212
    -  `getClosurePtrArgs` and `getClosurePtrArgs_maybe` have been added to allow
    
    211
    +* The functions ``getClosureInfoTbl_maybe``, ``getClosureInfoTbl``,
    
    212
    +  ``getClosurePtrArgs`` and ``getClosurePtrArgs_maybe`` have been added to allow
    
    213 213
       reading of the relevant Closure attributes without reliance on incomplete
    
    214 214
       selectors.
    
    215 215