... | ... | @@ -532,6 +532,14 @@ If you measure a significant regression in your program due to the change, the o |
|
|
|
|
|
### `ghc-9.0.*`
|
|
|
|
|
|
#### Module hierarchy
|
|
|
|
|
|
Per #13009, GHC modules have now been renamed to form a hierarchy under `GHC.*`. [ghc-api-compat](https://hackage.haskell.org/package/ghc-api-compat) package has been created for backward compatibility: it exports new modules with their old names (GHC 8.6). However as some modules have been reorganized internally (split, merged, etc.), there is no longer a one-to-one correspondence between old names and new names.
|
|
|
|
|
|
A good way to find new module names from old ones is to look for the old name in `ghc-api-compat`'s [Cabal file](https://github.com/hsyl20/ghc-api-compat/blob/master/ghc-api-compat.cabal). The module list in #13009 is not kept up to date: it's easier to maintain `ghc-api-compat`'s Cabal file that is mechanically checked against GHC codebase.
|
|
|
|
|
|
#### `hs_fixds`
|
|
|
|
|
|
The meaning of the `hs_fixds` field of `HsGroup` has changed slightly. It now only contains fixity signatures defined for top-level declarations and class methods defined _outside_ of the class itself. Previously, `hs_fixds` would also contain fixity signatures for class methods defined _inside_ the class, such as the fixity signature for `m` in the following example: ::
|
|
|
|
|
|
```hs
|
... | ... | |