<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en">
<head>
<meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
<title>
GitLab
</title>



<style>img {
max-width: 100%; height: auto;
}
</style>
</head>
<body>
<div class="content">

<h3>
Matthew Pickering pushed to branch wip/fix-hie-map
at <a href="https://gitlab.haskell.org/ghc/ghc">Glasgow Haskell Compiler / GHC</a>
</h3>
<h4>
Commits:
</h4>
<ul>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/2c115085982ba19985f2e00ca938370647e38e4b">2c115085</a></strong>
<div>
<span>by Wojciech Baranowski</span>
<i>at 2019-04-30T01:02:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rename: hadle type signatures with typos

When encountering type signatures for unknown names, suggest similar
alternatives.

This fixes issue #16504
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/fb9408dd779f53e2d13dd18638814118f6ca0cac">fb9408dd</a></strong>
<div>
<span>by Wojciech Baranowski</span>
<i>at 2019-04-30T01:02:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Print suggestions in a single message
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e8bf8834ccd4c39628785962576565e5fe240218">e8bf8834</a></strong>
<div>
<span>by Wojciech Baranowski</span>
<i>at 2019-04-30T01:02:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">osa1's patch: consistent suggestion message
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/1deb2bb0c5f1178515d57380c96ec3d4df5a7965">1deb2bb0</a></strong>
<div>
<span>by Wojciech Baranowski</span>
<i>at 2019-04-30T01:02:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Comment on 'candidates' function
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/8ee474320d849cc14b51706892665376e8ede629">8ee47432</a></strong>
<div>
<span>by Wojciech Baranowski</span>
<i>at 2019-04-30T01:02:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Suggest only local candidates from global env
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e23f78bab62d3a353eb7f67c1e0db60f5845286d">e23f78ba</a></strong>
<div>
<span>by Wojciech Baranowski</span>
<i>at 2019-04-30T01:02:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use pp_item
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/1abb76ab8e32e7be224631506201d1beec62a5c2">1abb76ab</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-04-30T01:08:45Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">ghci: Ensure that system libffi include path is searched

Previously hsc2hs failed when building against a system FFI.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/014ed644eea9037427c1ebeaac16189b00f9dbc7">014ed644</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2019-05-01T00:23:21Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Compute demand signatures assuming idArity

This does four things:

1. Look at `idArity` instead of manifest lambdas to decide whether to use LetUp
2. Compute the strictness signature in LetDown assuming at least `idArity`
   incoming arguments
3. Remove the special case for trivial RHSs, which is subsumed by 2
4. Don't perform the W/W split when doing so would eta expand a binding.
   Otherwise we would eta expand PAPs, causing unnecessary churn in the
   Simplifier.

NoFib Results

--------------------------------------------------------------------------------
        Program         Allocs    Instrs
--------------------------------------------------------------------------------
 fannkuch-redux          +0.3%      0.0%
             gg          -0.0%     -0.1%
       maillist          +0.2%     +0.2%
        minimax           0.0%     +0.8%
         pretty           0.0%     -0.1%
        reptile          -0.0%     -1.2%
--------------------------------------------------------------------------------
            Min          -0.0%     -1.2%
            Max          +0.3%     +0.8%
 Geometric Mean          +0.0%     -0.0%
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/d37d91e9a444a7822eef1558198d21511558515e">d37d91e9</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-05-01T00:29:31Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Generate settings by make/hadrian instead of configure

This allows it to eventually become stage-specific
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/53d1cd9634bc788fca022309af3416831b577a81">53d1cd96</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-05-01T00:29:31Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove settings.in

It is no longer needed
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/2988ef5e0334f9841bf23d905b0363a3b8a1a660">2988ef5e</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-05-01T00:29:31Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Move cGHC_UNLIT_PGM to be "unlit command" in settings

The bulk of the work was done in #712, making settings be make/Hadrian
controlled. This commit then just moves the unlit command rules in
make/Hadrian from the `Config.hs` generator to the `settings` generator
in each build system.

I think this is a good change because the crucial benefit is *settings*
don't affect the build: ghc gets one baby step closer to being a regular
cabal executable, and make/Hadrian just maintains settings as part of
bootstrapping.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/37a4fd9715de4dad8033ea74483432c77818abf5">37a4fd97</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-05-01T00:35:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Build Hadrian with -Werror in the 'ghc-in-ghci' CI job
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/1bef62c38d3737b5f5d7ebbb479f3c1a12b1aa09">1bef62c3</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-05-01T00:41:42Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">ErrUtils: Emit progress messages to eventlog
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ebfa35284741fca47719f531f0996261441f75b0">ebfa3528</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-05-01T00:41:42Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Emit GHC timing events to eventlog
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/4186b4100380fae1b91cae0d2fbb224ad70dc5f3">4186b410</a></strong>
<div>
<span>by Sven Tennie</span>
<i>at 2019-05-03T17:40:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Typeset Big-O complexities with Tex-style notation (#16090)

Use `\min` instead of `min` to typeset it as an operator.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/9047f1844d3f332e15f9e04e74891c771388da3d">9047f184</a></strong>
<div>
<span>by Shayne Fletcher</span>
<i>at 2019-05-03T18:54:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make Extension derive Bounded
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0dde64f28a587f66bc44e591744712004bfff19f">0dde64f2</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-05-03T18:54:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark concprog001 as fragile

Due to #16604.</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/8f929388c4b79b82a6e7772720d785f3cbc1f3c1">8f929388</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-05-03T18:54:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: generate JUnit testsuite report in Linux CI job

We also keep it as an artifact, like we do for non-Hadrian jobs, and list it
as a junit report, so that the test results are reported in the GitLab UI for
merge requests.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/52fc2719b93ab39be3e52eba531ee173b9134183">52fc2719</a></strong>
<div>
<span>by Vladislav Zavialov</span>
<i>at 2019-05-03T18:54:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Pattern/expression ambiguity resolution

This patch removes 'EWildPat', 'EAsPat', 'EViewPat', and 'ELazyPat'
from 'HsExpr' by using the ambiguity resolution system introduced
earlier for the command/expression ambiguity.

Problem: there are places in the grammar where we do not know whether we
are parsing an expression or a pattern, for example:

        do { Con a b <- x } -- 'Con a b' is a pattern
        do { Con a b }      -- 'Con a b' is an expression

Until we encounter binding syntax (<-) we don't know whether to parse
'Con a b' as an expression or a pattern.

The old solution was to parse as HsExpr always, and rejig later:

        checkPattern :: LHsExpr GhcPs -> P (LPat GhcPs)

This meant polluting 'HsExpr' with pattern-related constructors. In
other words, limitations of the parser were affecting the AST, and all
other code (the renamer, the typechecker) had to deal with these extra
constructors.

We fix this abstraction leak by parsing into an overloaded
representation:

        class DisambECP b where ...
        newtype ECP = ECP { runECP_PV :: forall b. DisambECP b => PV (Located b) }

See Note [Ambiguous syntactic categories] for details.

Now the intricacies of parsing have no effect on the hsSyn AST when it
comes to the expression/pattern ambiguity.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/9b59e126f541a7dadd5157334531d4bc68a5445b">9b59e126</a></strong>
<div>
<span>by Ningning Xie</span>
<i>at 2019-05-03T18:54:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Only skip decls with CUSKs with PolyKinds on (fix #16609)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/87bc954ab65aaf08b4f59cf46bd2916acd69ea73">87bc954a</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-05-03T18:54:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix interface version number printing in --show-iface

Before

    Version: Wanted [8, 0, 9, 0, 2, 0, 1, 9, 0, 4, 2, 5],
             got    [8, 0, 9, 0, 2, 0, 1, 9, 0, 4, 2, 5]

After

    Version: Wanted 809020190425,
             got    809020190425
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/cc495d5777c01ef62129df15caacf87b0e430c6b">cc495d57</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-05-03T18:54:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make equality constraints in kinds invisible

Issues #12102 and #15872 revealed something strange about the way GHC
handles equality constraints in kinds: it treats them as _visible_
arguments! This causes a litany of strange effects, from strange
error messages
(https://gitlab.haskell.org/ghc/ghc/issues/12102#note_169035)
to bizarre `Eq#`-related things leaking through to GHCi output, even
without any special flags enabled.

This patch is an attempt to contain some of this strangeness.
In particular:

* In `TcHsType.etaExpandAlgTyCon`, we propagate through the
  `AnonArgFlag`s of any `Anon` binders. Previously, we were always
  hard-coding them to `VisArg`, which meant that invisible binders
  (like those whose kinds were equality constraint) would mistakenly
  get flagged as visible.
* In `ToIface.toIfaceAppArgsX`, we previously assumed that the
  argument to a `FunTy` always corresponding to a `Required`
  argument. We now dispatch on the `FunTy`'s `AnonArgFlag` and map
  `VisArg` to `Required` and `InvisArg` to `Inferred`. As a
  consequence, the iface pretty-printer correctly recognizes that
  equality coercions are inferred arguments, and as a result,
  only displays them in `-fprint-explicit-kinds` is enabled.
* Speaking of iface pretty-printing, `Anon InvisArg` binders were
  previously being pretty-printed like `T (a :: b ~ c)`, as if they
  were required. This seemed inconsistent with other invisible
  arguments (that are printed like `T @{d}`), so I decided to switch
  this to `T @{a :: b ~ c}`.

Along the way, I also cleaned up a minor inaccuracy in the users'
guide section for constraints in kinds that was spotted in
https://gitlab.haskell.org/ghc/ghc/issues/12102#note_136220.

Fixes #12102 and #15872.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/f862963b6cdd217730e4f36f07ad52ac9f7be7f3">f862963b</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-05-04T00:50:03Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Properly free the RTSSummaryStats structure

`stat_exit` always allocates a `RTSSummaryStats` but only sometimes
frees it, which casues leaks. With this patch we unconditionally free
the structure, fixing the leak.

Fixes #16584
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0af93d16d93ee24efd6ed4a0466f813650b8788f">0af93d16</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-05-04T00:56:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">StgCmmMonad: remove emitProc_, don't export emitProc
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0a3e4db325ed2d073c9664f6ce1f9165181116b0">0a3e4db3</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-05-04T00:56:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">PrimOps.cmm: remove unused stuff
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/63150b9e5583c5fc3252f242981b0d26f11348b2">63150b9e</a></strong>
<div>
<span>by iustin</span>
<i>at 2019-05-04T21:54:23Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix typo in 8.8.1 notes related to traceBinaryEvent

- fixes double mention of `traceBinaryEvent#` (the second one should be `traceEvent#`, I think)
- fixes note about `traceEvent#` taking a `String` - the docs say it takes a zero-terminated ByteString.</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/dc8a5868b0be03854927a5efab83a6e9a15e21d1">dc8a5868</a></strong>
<div>
<span>by gallais</span>
<i>at 2019-05-04T22:00:30Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">[ typo ] 'castFloatToWord32' -> 'castFloatToWord64'

Probably due to a copy/paste gone wrong.</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/615b4be66341edb513785d3511e71803c45da90f">615b4be6</a></strong>
<div>
<span>by Chaitanya Koparkar</span>
<i>at 2019-05-05T14:39:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #16593 by having only one definition of -fprint-explicit-runtime-reps

[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ead3f835e24338fb3df3ebdec3e86f9364df7c9c">ead3f835</a></strong>
<div>
<span>by Vladislav Zavialov</span>
<i>at 2019-05-05T14:39:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">'warnSpaceAfterBang' only in patterns (#16619)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/27941064872b19f65e99ba65b7fa8635268ee738">27941064</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-05-06T18:59:29Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove cGhcEnableTablesNextToCode

Get "Tables next to code" from the settings file instead.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/821fa9e81161f4414041c840236df848e18cb3b4">821fa9e8</a></strong>
<div>
<span>by Takenobu Tani</span>
<i>at 2019-05-06T19:05:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove `$(TOP)/ANNOUNCE` file

Remove `$(TOP)/ANNOUNCE` because maintaining this file is expensive
for each release.

Currently, release announcements of ghc are made on ghc blogs and wikis.

[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e172a6d127a65b945b31306ff7b6c43320debfb4">e172a6d1</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-05-06T19:11:43Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Enable external interpreter when TH is requested but no internal interpreter is available
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ba0aed2e783435c9175761fc2b20b9302f368a98">ba0aed2e</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-05-06T21:32:56Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: override $(ghc-config-mk), to prevent redundant config generation

This required making the 'ghc-config-mk' variable overridable in
testsuite/mk/boilerplate.mk, and then making use of this in hadrian
to point to '<build root>/test/ghcconfig' instead, which is where we
always put the test config.

Previously, we would build ghc-config and run it against the
GHC to be tested, a second time, while we're running the tests, because some
include testsuite/mk/boilerplate.mk. This was causing unexpected output
failures.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/961979617a3b6717f5d175c08884a9b970602d6e">96197961</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-05-07T10:35:58Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add /includes/dist to .gitignore

As of commit d37d91e9a444a7822eef1558198d21511558515e, the GHC build
now autogenerates a `includes/dist/build/settings` file. To avoid
dirtying the current `git` status, this adds `includes/dist` to
`.gitignore`.

[ci skip]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/78a5c4ce6bae233b655097ada3901028104f0f27">78a5c4ce</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-05-07T21:03:04Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Check for duplicate variables in associated default equations

A follow-up to !696's, which attempted to clean up the error messages
for ill formed associated type family default equations. The previous
attempt, !696, forgot to account for the possibility of duplicate
kind variable arguments, as in the following example:

```hs
class C (a :: j) where
  type T (a :: j) (b :: k)
  type T (a :: k) (b :: k) = k
```

This patch addresses this shortcoming by adding an additional check
for this. Fixes #13971 (hopefully for good this time).
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/f58ea556538c048b05607be869feb677b1083175">f58ea556</a></strong>
<div>
<span>by Kevin Buhr</span>
<i>at 2019-05-07T21:09:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add regression test for old typechecking issue #505
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/786e665b8dac5430c02089b39f7cb7572a5254d8">786e665b</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-05-08T05:55:45Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #16603 by documenting some important changes in changelogs

This addresses some glaring omissions from
`libraries/base/changelog.md` and
`docs/users_guide/8.8.1-notes.rst`, fixing #16603 in the process.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0eeb4cfad732d0b9b278c2274cb6db9633f9d3b5">0eeb4cfa</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-05-08T06:01:54Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #16632 by using the correct SrcSpan in checkTyClHdr

`checkTyClHdr`'s case for `HsTyVar` was grabbing the wrong `SrcSpan`,
which lead to error messages pointing to the wrong location. Easily
fixed.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ed5f858b8484a207e28baf9cbec4c60de1c86187">ed5f858b</a></strong>
<div>
<span>by Shayne Fletcher</span>
<i>at 2019-05-08T19:29:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Implement ImportQualifiedPost
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/d9bdff607e79a605197a13203ca9421153e8dd37">d9bdff60</a></strong>
<div>
<span>by Kevin Buhr</span>
<i>at 2019-05-08T19:35:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">stg_floatToWord32zh: zero-extend the Word32 (#16617)

The primop stgFloatToWord32 was sign-extending the 32-bit word, resulting
in weird negative Word32s.  Zero-extend them instead.

Closes #16617.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/9a3acac968d76370e12839db4b71bb0a43e35b2c">9a3acac9</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-05-08T19:41:17Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Print PAP object address in stg_PAP_info entry code

Continuation to ce23451c
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/4c86187ccd49309c1d6b32d05b164822a803d3e2">4c86187c</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2019-05-08T19:47:33Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Regression test for #16627.

test: typecheck/should_fail/T16627
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/93f34bbd3319544d8eb3a5e2593bccb9b12e3459">93f34bbd</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-05-08T19:53:40Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Purge TargetPlatform_NAME and cTargetPlatformString
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/9d9af0eea599b82f5567885a36e9059f8484aa39">9d9af0ee</a></strong>
<div>
<span>by Kevin Buhr</span>
<i>at 2019-05-08T19:59:46Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add regression test for old issue #507
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/396e01b472bba36530e7eb065b82d311f0da7880">396e01b4</a></strong>
<div>
<span>by Vladislav Zavialov</span>
<i>at 2019-05-08T20:05:52Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add a regression test for #14548
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/5eb9445444c4099fc9ee0803ba45db390900a80f">5eb94454</a></strong>
<div>
<span>by Oleg Grenrus</span>
<i>at 2019-05-10T20:26:28Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add Generic tuple instances up to 15-tuple

Why 15? Because we have Eq instances up to 15.

Metric Increase:
    T9630
    haddock.base
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/c7913f71bc8ed8910c829a84b78d2f56b05f0473">c7913f71</a></strong>
<div>
<span>by Roland Senn</span>
<i>at 2019-05-10T20:32:38Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix bugs and documentation for #13456
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/bfcd986dc424f506e100f9a29bb62c9ff22e9702">bfcd986d</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-05-10T20:38:57Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: programs need registered ghc-pkg libraries

In Hadrian, building programs (e.g. `ghc` or `haddock`) requires libraries located in the ghc-pkg package database i.e.

    _build/stage1/lib/x86_64-linux-ghc-8.9.0.20190430/libHSdeepseq-1.4.4.0-ghc8.9.0.20190430.so

Add the corresponding `need`s for these library files and the subsequent rules.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/10f579ad57cb5a11f67694df9ad4823656d91e7b">10f579ad</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-05-10T20:45:05Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Disable cleanup job on Windows

As discussed in the Note, we now have a cron job to handle this and the
cleanup job itself is quite fragile.

[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/6f07f828e4f7a445fabd82dcb3fbf6edb2641369">6f07f828</a></strong>
<div>
<span>by Kevin Buhr</span>
<i>at 2019-05-10T20:51:11Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add regression test case for old issue #493
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/4e25bf46fd722178d3a5ca65ccf2f13710f56a91">4e25bf46</a></strong>
<div>
<span>by Giles Anderson</span>
<i>at 2019-05-13T23:01:52Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Change GHC.hs to Packages.hs in Hadrian user-settings.md

... "all packages that are currently built as part of the GHC are
defined in src/Packages.hs"
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/357be128fc1b545c182a9c6167437616636a300b">357be128</a></strong>
<div>
<span>by Kevin Buhr</span>
<i>at 2019-05-14T20:41:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add regression test for old parser issue #504
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/015a21b8990a7fcf0d9d31a951af3ae8b06076c4">015a21b8</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-05-14T20:41:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">hadrian: Make settings stage specific
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/f9e4ea401121572d799b9db56f24aa1abdf5edf8">f9e4ea40</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-05-14T20:41:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Dont refer to `cLeadingUnderscore` in test

Can't use this config entry because it's about to go away
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e529c65eacf595006dd5358491d28c202d673732">e529c65e</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-05-14T20:41:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove all target-specific portions of Config.hs

1. If GHC is to be multi-target, these cannot be baked in at compile
   time.

2. Compile-time flags have a higher maintenance than run-time flags.

3. The old way makes build system implementation (various bootstrapping
   details) with the thing being built. E.g. GHC doesn't need to care
   about which integer library *will* be used---this is purely a crutch
   so the build system doesn't need to pass flags later when using that
   library.

4. Experience with cross compilation in Nixpkgs has shown things work
   nicer when compiler's can *optionally* delegate the bootstrapping the
   package manager. The package manager knows the entire end-goal build
   plan, and thus can make top-down decisions on bootstrapping. GHC can
   just worry about GHC, not even core library like base and ghc-prim!
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/5cf8032e2fd2a2f35b8de9016c6e38e92c524394">5cf8032e</a></strong>
<div>
<span>by Oleg Grenrus</span>
<i>at 2019-05-14T20:41:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Update terminal title while running test-suite

Useful progress indicator even when `make test VERBOSE=1`,
and when you do something else, but have terminal title visible.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/c72c369bcd56c74b745d90ee8f6acd12b430c65c">c72c369b</a></strong>
<div>
<span>by Vladislav Zavialov</span>
<i>at 2019-05-14T20:41:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add a minimized regression test for #12928
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/a5fdd185188fcda595fd712f90864ec7c20cdace">a5fdd185</a></strong>
<div>
<span>by Vladislav Zavialov</span>
<i>at 2019-05-14T20:41:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Guard CUSKs behind a language pragma

GHC Proposal #36 describes a transition plan away from CUSKs and to
top-level kind signatures:

1. Introduce a new extension, -XCUSKs, on by default, that detects CUSKs
   as they currently exist.
2. We turn off the -XCUSKs extension in a few releases and remove it
   sometime thereafter.

This patch implements phase 1 of this plan, introducing a new language
extension to control whether CUSKs are enabled. When top-level kind
signatures are implemented, we can transition to phase 2.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/684dc290563769d456b6f1c772673d64307ab072">684dc290</a></strong>
<div>
<span>by Vladislav Zavialov</span>
<i>at 2019-05-14T20:41:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Restore the --coerce option in 'happy' configuration

happy-1.19.10 has been released with a fix for --coerce in the presence
of higher rank types. This should result in about 10% performance
improvement in the parser.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/a416ae26a2e45de3d9a76e94fc22aaa53e9e5b12">a416ae26</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-05-14T20:41:20Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: 'need' source files for various docs in Rules.Documentation

Previously, changing one of the .rst files from the user guide would not cause
the user guide to be rebuilt. This patch take a first stab at declaring the
documentation source files that our documentation rules depend on, focusing
on the .rst files only for now.

We eventually might want to rebuild docs when we, say, change the haddock style
file, but this level of tracking isn't really necessary for now.

This fixes #16645.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/7105fb66a7bacf822f7f23028136f89ff5737d0e">7105fb66</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-05-16T16:47:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Explicit state that CONSTR tag field is zero-based

This was a bit unclear as we use both one-based and zero-based
tags in GHC.

[skip ci]</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/5bb80cf2c5601fc57231946c10aee76398b907dd">5bb80cf2</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-05-20T14:41:55Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Improve test runner logging when calculating performance metric baseline #16662

We attempt to get 75 commit hashes via `git log`, but this only gave 10
hashes in a CI run (see #16662). Better logging may help solve this
error if it occurs again in the future.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/b46efa2bbf86cf0673d0d6dfd5c40b2b0db5f9ff">b46efa2b</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-05-20T18:45:56Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Recalculate Performance Test Baseline T9630 #16680

Metric Decrease:
    T9630
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/54095bbd3a5481e906b05c80ea68841165c7a2b3">54095bbd</a></strong>
<div>
<span>by Takenobu Tani</span>
<i>at 2019-05-21T20:54:00Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">users-guide: Fix directive errors on 8.10

The following sections are not displayed due to a directive error:

  * -Wunused-record-wildcards
  * -Wredundant-record-wildcards

I changed the location of the `since` directive.

[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/8fc654c3a00ab0cd842c3e8316f832170ea561d6">8fc654c3</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-05-21T20:57:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Include CPP preprocessor dependencies in -M output

Issue #16521
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0af519ac583c3544b1c4b1315b38ba0174d3ccb1">0af519ac</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-05-21T21:01:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Refactor Libffi and RTS rules

This removes a hack that copies libffi files to the rts
build directory. This was done in a libffi rule, but now
an rts rule correctly needs and copies the relevant
files from the libffi build dir to the rts build dir.

Issues: #16272 #16304
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/9342b1fabd09e8bbebb982b07f129da266f7c586">9342b1fa</a></strong>
<div>
<span>by Kirill Elagin</span>
<i>at 2019-05-21T21:04:54Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">users-guide: Fix -rtsopts default</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/d0142f21692c4b4514ea68e489c943ac26037d8f">d0142f21</a></strong>
<div>
<span>by Javran Cheng</span>
<i>at 2019-05-21T21:08:29Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix doc for Data.Function.fix.

Doc-only change.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ddd905b4eada5a9a33977a435393cf7826a4d6a5">ddd905b4</a></strong>
<div>
<span>by Shayne Fletcher</span>
<i>at 2019-05-21T21:12:07Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Update resolver for for happy 1.19.10
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e32c30caf48517df8ddca6a79a39becfe5622c39">e32c30ca</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-05-21T21:15:45Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">distrib/configure.ac.in: remove mention to 'settings', since settings.in is gone

Otherwise, when `./configure`ing a GHC bindist, produced by either Make or
Hadrian, we would try to generate the `settings` file from the `settings.in`
template that we used to have around but which has been gone since d37d91e9.
That commit generates the settings file using the build systems instead, but
forgot to remove this mention to the `settings` file.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/4a6c8436f974cafc36a6e0462878614bdc0899c0">4a6c8436</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-05-21T21:19:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #16666 by parenthesizing contexts in Convert

Most places where we convert contexts in `Convert` are actually in
positions that are to the left of some `=>`, such as in superclasses
and instance contexts. Accordingly, these contexts need to be
parenthesized at `funPrec`. To accomplish this, this patch changes
`cvtContext` to require a precedence argument for the purposes of
calling `parenthesizeHsContext` and adjusts all `cvtContext` call
sites accordingly.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/c32f64e5a9bcdb17d69bcabf0f0db0203eb6b7d9">c32f64e5</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-05-21T21:23:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Allow Windows Hadrian build to fail

Due to #16574.</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/412a1f39ecc26fb8bce997bfe71e87b7284a1493">412a1f39</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-05-21T21:23:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Update .gitlab-ci.yml</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0dc7985663efa1739aafb480759e2e2e7fca2a36">0dc79856</a></strong>
<div>
<span>by Julian Leviston</span>
<i>at 2019-05-22T00:55:44Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Allow for multiple linker instances. Fixes Haskell portion of #3372.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/21272670581608b96a85cfb942af81ada3cfd450">21272670</a></strong>
<div>
<span>by Michael Sloan</span>
<i>at 2019-05-22T20:37:57Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Have GHCi use object code for UnboxedTuples modules #15454

The idea is to automatically enable -fobject-code for modules that use
UnboxedTuples, along with all the modules they depend on. When looking
into how to solve this, I was pleased to find that there was already
highly similar logic for enabling code generation when -fno-code is
specified but TemplateHaskell is used.

The state before this patch was that if you used unboxed tuples then you
had to enable `-fobject-code` globally rather than on a per module
basis.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ddae344e80eee3044f773061126937a69d16c957">ddae344e</a></strong>
<div>
<span>by Michael Sloan</span>
<i>at 2019-05-22T20:41:31Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use datatype for unboxed returns when loading ghc into ghci

See #13101 and #15454
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/78c3f3305e173c7667ffb47b97ff0ecacc279fe5">78c3f330</a></strong>
<div>
<span>by Kevin Buhr</span>
<i>at 2019-05-22T20:45:08Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add regression test for old Word32 arithmetic issue (#497)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ecc9366a0e0db107c286935130837b2222e2dd82">ecc9366a</a></strong>
<div>
<span>by Alec Theriault</span>
<i>at 2019-05-22T20:48:45Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">RTS: Fix restrictive cast

Commit e75a9afd2989e0460f9b49fa07c1667299d93ee9 added an `unsigned` cast
to account for OSes that have signed `rlim_t` signed. Unfortunately,
the `unsigned` cast has the unintended effect of narrowing `rlim_t` to
only 4 bytes. This leads to some spurious out of memory crashes
(in particular: Haddock crashes with OOM whenn building docs of
`ghc`-the-library).

In this case, `W_` is a better type to cast to: we know it will be
unsigned too and it has the same type as `*len` (so we don't suffer from
accidental narrowing).
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/2c15b85eb2541a64df0cdf3705fb9aa068634004">2c15b85e</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-05-22T20:52:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: add --test-root-dirs, to only run specific directories of tests

We can specify several of those, by using the flag multiple times or
just once but combining the directories with ':'.

Along the way, this patch also fixes the testsuite-related --only flag,
so that we can use it many times instead of being force to specify a
space-separated list of test in a single --only flag.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/6efe04dee3f4c584e0cd043b8424718f0791d1be">6efe04de</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-05-22T20:56:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use HsTyPats in associated type family defaults

Associated type family default declarations behave strangely in a
couple of ways:

1. If one tries to bind the type variables with an explicit `forall`,
   the `forall`'d part will simply be ignored. (#16110)
2. One cannot use visible kind application syntax on the left-hand
   sides of associated default equations, unlike every other form
   of type family equation. (#16356)

Both of these issues have a common solution. Instead of using
`LHsQTyVars` to represent the left-hand side arguments of an
associated default equation, we instead use `HsTyPats`, which is what
other forms of type family equations use. In particular, here are
some highlights of this patch:

* `FamEqn` is no longer parameterized by a `pats` type variable, as
  the `feqn_pats` field is now always `HsTyPats`.
* The new design for `FamEqn` in chronicled in
  `Note [Type family instance declarations in HsSyn]`.
* `TyFamDefltEqn` now becomes the same thing as `TyFamInstEqn`. This
  means that many of `TyFamDefltEqn`'s code paths can now reuse the
  code paths for `TyFamInstEqn`, resulting in substantial
  simplifications to various parts of the code dealing with
  associated type family defaults.

Fixes #16110 and #16356.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/4ba73e00c4887b58d85131601a15d00608acaa60">4ba73e00</a></strong>
<div>
<span>by Luite Stegeman</span>
<i>at 2019-05-22T20:59:39Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">fix Template Haskell cross compilation on 64 bit compiler with 32 bit target
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/535a26c90f458801aeb1e941a3f541200d171e8f">535a26c9</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-05-23T17:26:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Revert "Add Generic tuple instances up to 15-tuple" #16688

This reverts commit 5eb9445444c4099fc9ee0803ba45db390900a80f.
It has caused an increase in variance of performance test T9630,
causing CI to fail.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/04b4b98447c36a2d28fffe819c97c32b591479ee">04b4b984</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-05-24T02:32:15Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">add an --hadrian mode to ./validate

When the '--hadrian' flag is passed to the validate script, we use hadrian
to build GHC, package it up in a binary distribution and later on run GHC's
testsuite against the said bindist, which gets installed locally in the process.

Along the way, this commit fixes a typo, an omission (build iserv binaries
before producing the bindist archive) and moves the Makefile that enables
'make install' on those bindists from being a list of strings in the code to
an actual file (it was becoming increasingly annoying to work with).

Finally, the Settings.Builders.Ghc part of this patch is necessary for being
able to use the installed binary distribution, in 'validate'.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0b449d3415543771779a74f8d867eb1a4748ddb2">0b449d34</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-05-24T02:35:54Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add a test for #16597
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/59f4cb6fb73ade6f9b0bdc85380dfddba93bf14b">59f4cb6f</a></strong>
<div>
<span>by Iavor Diatchki</span>
<i>at 2019-05-24T02:39:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add a `NOINLINE` pragma on `someNatVal` (#16586)

This fixes #16586, see `Note [NOINLINE someNatVal]` for details.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/6eedbd83a19cad94414b37f984b6e9c2b0c0b2e4">6eedbd83</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-05-24T02:43:12Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Some forall-related cleanup in deriving code

* Tweak the parser to allow `deriving` clauses to mention explicit
  `forall`s or kind signatures without gratuitous parentheses.
  (This fixes #14332 as a consequence.)
* Allow Haddock comments on `deriving` clauses with explicit
  `forall`s. This requires corresponding changes in Haddock.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/c931f2561207aa06f1750827afbb68fbee241c6f">c931f256</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-05-24T10:22:29Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Allow metric change after reverting "Add Generic tuple instances up to 15-tuple" #16688

Metrics increased on commit 5eb9445444c4099fc9ee0803ba45db390900a80f and
decreased on revert commit 535a26c90f458801aeb1e941a3f541200d171e8f.

Metric Decrease:
    T9630
    haddock.base
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/f9d001f2e43f116e683a7baa764caa2aa1634dd0">f9d001f2</a></strong>
<div>
<span>by Matthew Pickering</span>
<i>at 2019-05-24T19:52:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use types already in AST when making .hie file

These were meant to be added in !214 but for some reason wasn't included
in the patch.
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#a5cc2925ca8258af241be7e5b0381edf30266302">
.gitignore
</a>
</li>
<li class="file-stats">
<a href="#587d266bb27a4dc3022bbed44dfa19849df3044c">
.gitlab-ci.yml
</a>
</li>
<li class="file-stats">
<a href="#b1f70e577fa0a01f44737b27f60defa4c87c49e3">
<span class="deleted-file">

ANNOUNCE
</span>
</a>
</li>
<li class="file-stats">
<a href="#9ab3868b23ed5d5a6e12ef902049902556fa4009">
aclocal.m4
</a>
</li>
<li class="file-stats">
<a href="#10828b99499a9ef1e9839b007762c68994bcb036">
compiler/basicTypes/Demand.hs
</a>
</li>
<li class="file-stats">
<a href="#2c842f2f15e67826dc12cc363525b56acb7b7882">
compiler/basicTypes/Id.hs
</a>
</li>
<li class="file-stats">
<a href="#6f7593803995899e68e1b976dcde5817ec0f2342">
compiler/basicTypes/IdInfo.hs
</a>
</li>
<li class="file-stats">
<a href="#2da47fed955dc80b79c67ba640b94aeecf9d5524">
compiler/basicTypes/UniqSupply.hs
</a>
</li>
<li class="file-stats">
<a href="#75c960e63e855ede311c1cf6d407b2bf0b742333">
compiler/basicTypes/Var.hs
</a>
</li>
<li class="file-stats">
<a href="#db6936871693fa68c3fdcbd692eb7dcffc3a9372">
compiler/cmm/CLabel.hs
</a>
</li>
<li class="file-stats">
<a href="#b9c97a47b4d7d9443a2b066938a6e4433cf11c86">
compiler/codeGen/StgCmmMonad.hs
</a>
</li>
<li class="file-stats">
<a href="#ed7e37ad33aa047f1f6bc74d375c38e6484b231c">
compiler/coreSyn/CoreArity.hs
</a>
</li>
<li class="file-stats">
<a href="#da5742c4b404a672740f0eef71683f5a8dd3818e">
compiler/coreSyn/CoreLint.hs
</a>
</li>
<li class="file-stats">
<a href="#f50439b73583d5fc97ab8917b6fc66f6188a1e62">
compiler/coreSyn/CorePrep.hs
</a>
</li>
<li class="file-stats">
<a href="#c9f253bc92ffa226506febcfb5ef5e67536616f2">
compiler/coreSyn/CoreUnfold.hs
</a>
</li>
<li class="file-stats">
<a href="#4cebcede53127700de963abffccad9d336d74889">
compiler/deSugar/DsExpr.hs
</a>
</li>
<li class="file-stats">
<a href="#cf5b233b6ec5c0a6951d1018fee507d2d2d71391">
compiler/deSugar/DsForeign.hs
</a>
</li>
<li class="file-stats">
<a href="#cb94ea134d6d52fab318831e397d2a5c789f2ef3">
compiler/deSugar/DsMeta.hs
</a>
</li>
<li class="file-stats">
<a href="#828fc123b45440f198ae1a73afbdb01bfecdf022">
compiler/deSugar/ExtractDocs.hs
</a>
</li>
<li class="file-stats">
<a href="#0f33fd88c617246c7f89c4477d2d1d24f942df23">
compiler/ghc.cabal.in
</a>
</li>
<li class="file-stats">
<a href="#6846a4633a1df62b15f368e7e22420844e3c6352">
compiler/ghc.mk
</a>
</li>
<li class="file-stats">
<a href="#7cf100051b3d8b0e1a0d4f723a9675e6c1540405">
compiler/ghci/Debugger.hs
</a>
</li>
<li class="file-stats">
<a href="#47f4bea1d308dee249030e6063d92071b5aac240">
compiler/ghci/Linker.hs
</a>
</li>
<li class="file-stats">
<a href="#56a2aef3e536ed0c92ee3fe12720d26f6c84d541">
<span class="new-file">
+
compiler/ghci/LinkerTypes.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#7f924eb82ea52b493e50fc467c301adb6a0eaf32">
compiler/hieFile/HieAst.hs
</a>
</li>
<li class="file-stats">
<a href="#8edc819d4b7e02c1439ca8bb128a773a9d2ab2cd">
compiler/hsSyn/Convert.hs
</a>
</li>
<li class="file-stats">
<a href="#0db90e3d6e6150a586bbd58f75f250c3c71766f9">
compiler/hsSyn/HsDecls.hs
</a>
</li>
<li class="file-stats">
<a href="#cd87eb0344087ad60213d14d7abe8bf5ed82b93f">
compiler/hsSyn/HsExpr.hs
</a>
</li>
<li class="file-stats">
<a href="#3ec3774412294d7ceaaa0572f116dc7c911d3f6d">
compiler/hsSyn/HsExtension.hs
</a>
</li>
<li class="file-stats">
<a href="#1cdb1403f521a3eca20f72051b8923885fd0302b">
compiler/hsSyn/HsImpExp.hs
</a>
</li>
</ul>
<h5>The diff was not included because it is too large.</h5>

</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #777;">

<br>
<a href="https://gitlab.haskell.org/ghc/ghc/compare/59097adc8b20277afa169553b530f6979909e607...f9d001f2e43f116e683a7baa764caa2aa1634dd0">View it on GitLab</a>.
<br>
You're receiving this email because of your account on gitlab.haskell.org.
If you'd like to receive fewer emails, you can
adjust your notification settings.


</p>
</div>
</body>
</html>