<!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>
Sebastian Graf pushed to branch wip/pmcheck-ncon
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/0345b1b0f62c8fac72d07a7b848d14b9893e9ac9">0345b1b0</a></strong>
<div>
<span>by Richard Eisenberg</span>
<i>at 2019-06-11T03:52:10Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Comments only: document newtypes' DataConWrapId
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/58a5d728d0293110d7e80aa1f067721447b20882">58a5d728</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-06-11T03:52:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Refactor the rules for .hi and .o into a single rule using `&%>` #16764

Currently the rule for .hi files just triggers (via need) the rule
for the .o file, and .o rule generates both the .o and .hi file.
Likewise for .o-boot and .hi-boot files. This is a bit of an abuse
of Shake, and in fact shake supports rules with multiple output
with the &%> function. This exact use case appears in Neil
Mitchell's paper *Shake Before Building* section 6.3.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/2f9450864b355269a102216292f2034f0f7bedda">2f945086</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-11T03:53:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Fix and extend closure_size test

This was previously broken in several ways. This is fixed and it also
now tests arrays. Unfortunately I was unable to find a way to continue
testing PAP and FUN sizes; these simply depend too much upon the
behavior of the simplifier.

I also tried to extend this to test non-empty arrays as well but
unfortunately this was non-trivial as the array card size constant isn't
readily available from haskell.

Fixes #16531.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e5d275f45677ed89df310754973a15c522dc1003">e5d275f4</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-11T03:53:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">ghc-heap: Add closure_size_noopt test

This adds a new test, only run in the `normal` way, to verify the size
of FUNs and PAPs.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/fe7e7e4a950a77326cc16f4ade30a67d20d7cdd5">fe7e7e4a</a></strong>
<div>
<span>by Yuras Shumovich</span>
<i>at 2019-06-11T22:39:58Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Warn about unused packages

Reviewers: bgamari, simonpj

Reviewed By: simonpj

Subscribers: hvr, simonpj, mpickering, rwbarton, carter

GHC Trac Issues: #15838

Differential Revision: https://phabricator.haskell.org/D5285
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/39f50bff3ea913a7f4b1d915660bcf77b9327e2e">39f50bff</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-06-11T22:40:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Refine the GHCI macro into HAVE[_{INTERNAL, EXTERNAL}]_INTERPRETER

As discussed in #16331, the GHCI macro, defined through 'ghci' flags
in ghc.cabal.in, ghc-bin.cabal.in and ghci.cabal.in, is supposed to indicate
whether GHC is built with support for an internal interpreter, that runs in
the same process. It is however overloaded in a few places to mean
"there is an interpreter available", regardless of whether it's an internal
or external interpreter.

For the sake of clarity and with the hope of more easily being able to
build stage 1 GHCs with external interpreter support, this patch splits
the previous GHCI macro into 3 different ones:

- HAVE_INTERNAL_INTERPRETER: GHC is built with an internal interpreter
- HAVE_EXTERNAL_INTERPRETER: GHC is built with support for external interpreters
- HAVE_INTERPRETER: HAVE_INTERNAL_INTERPRETER || HAVE_EXTERNAL_INTERPRETER
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/45616133efba0c17a461ecf085427b7956250fad">45616133</a></strong>
<div>
<span>by Alec Theriault</span>
<i>at 2019-06-11T22:41:14Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make `haddock_testsuite` respect `--test-accept`

Suppose you've made changes that affect the output of `haddockHtmlTest`
so that the following is failing:

    ./hadrian/build.sh -c --only=haddockHtmlTest test

Then, the following will accept new output for Haddock's test cases.

    ./hadrian/build.sh -c --only=haddockHtmlTest test --test-accept

You still do need to make sure those new changes (which show up in
Haddock's tree) get committed though.

Fixes #16694
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/762098bf2cfac657c0320249f62dc49bad77f7bf">762098bf</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-06-11T22:41:52Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts/RtsFlags.c: mention that -prof too enables support for +RTS -l
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/457fe7897d42e4359b6da6b359fd7ea8ae0f1d75">457fe789</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-06-11T22:42:30Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: teach the RTS that PROFILING implies TRACING

As discussed in #16744, both the Make and Hadrian build systems
have special code to always pass -eventlog whenever -prof or -debug
are passed. However, there is some similar logic in the RTS itself only
for defining TRACING when the DEBUG macro is defined, but no such logic
is implemented to define TRACING when the PROFILING macro is defined.
This patch adds such a logic and therefore fixes #16744.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/cf7f36ae5e0ceee1c37a4c38464209f04647a470">cf7f36ae</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-11T22:43:05Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts/linker: Mmap into low memory on AArch64

This extends mmapForLinker to use the same low-memory mapping
strategy used on x86_64 on AArch64. See #16784.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0b7f81f560c602f32cfc90fd3fb5f1c52f06ad49">0b7f81f5</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-11T22:43:05Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts/linker: Use mmapForLinker to map PLT

The PLT needs to be located within a close distance of
the code calling it under the small memory model.

Fixes #16784.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/1389b2ccdecb0ea7a8982884512dbf7175a52042">1389b2cc</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-06-11T22:43:43Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix an error message in CheckUnload.c:searchHeapBlocks
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/aad6115aed884db9ed47ac602ca1bd3b953ea089">aad6115a</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-06-11T22:44:20Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite/mk/boilerplate.mk: rename 'ghc-config-mk' to 'ghc_config_mk'

Make/shell variable names which contain dashes can cause problems under
some conditions. The 'ghc-config-mk' variable from testsuite/mk/boilerplate.mk
that I made overridable (by Hadrian) in ba0aed2e was working as expected when
our Hadrian/Linux job was based off the deb8 Docker image, but broke when
I switched the job to use our deb9-based image, in 3d97bad6. The exact
circumstances/tool versions that trigger this problem are unknown, but
changing the variable's name to 'ghc_config_mk' lets us work around the issue.

This fixes the annth_compunits and annth_make test failures that showed up
when we switched the Hadrian/Linux job to use the deb9 environment.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/9b4ff57d71eebf6dd71a5d81d0f9c9c2aef80e65">9b4ff57d</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T11:35:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">llvm-targets: Add armv7l-unknown-linux-gnueabi

Fixes #15208.

[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/c05ca251620ff2589f21192208a1e500285eb5c3">c05ca251</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T11:36:01Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Add haddock perf test output to gitignore

[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/bbc752c50f3adcb659cd8447635828e137a0a314">bbc752c5</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T11:36:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts/linker: Make elf_got.c a bit more legible
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/217e6db4af6752b13c586d4e8925a4a9a2f47245">217e6db4</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T11:36:36Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts/linker: Only mprotect GOT after it is filled

This fixes a regression, introduced by 67c422ca, where we mprotect'd the
global offset table (GOT) region to PROT_READ before we had finished
filling it, resulting in a linker crash.

Fixes #16779.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/1219f8e8a3d1b58263bea76822322b746a632778">1219f8e8</a></strong>
<div>
<span>by Krzysztof Gogolewski</span>
<i>at 2019-06-12T11:37:12Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use DeriveFunctor throughout the codebase (#15654)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/bd2d13ff778a4b1b5d793c99229cccfb64d792f3">bd2d13ff</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump binary to 0.8.7.0

(cherry picked from commit 983ada70a013c7642a751f6e41587ff95b57d0f8)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/381c3ae31b68019177f1cd20cb4da2f9d3b7d6c6">381c3ae3</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump Cabal submodule

(cherry picked from commit ff438786613f07df9b2d43eaeac49b13815d849d)

Metric Increase:
    haddock.Cabal
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0354c7ded874f18c177e9154615c9dfdf1d99d8a">0354c7de</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump time submodule to 1.9.3

(cherry picked from commit fdb07571036b1498800589d45b61781e6acdd368)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e0b16eaa856bc126ee6676b0c5e40fb01c6558f6">e0b16eaa</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump terminfo to 0.4.1.4

(cherry picked from commit 1134488b4c9cef904ea82f22f1978646eea612df)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/2ce320b07ca9171d132b748ecbc3d7fdee4840b8">2ce320b0</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Test using slowtest in deb9-debug job
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/90e7c450ce9b9b1ec36ea12ef8041d8e7f192c36">90e7c450</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark hWaitForInput-accurate-stdin as broken in threaded ways

As noted in #16535.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/488187f81babf0b0937aec0c81b132563cbbec4e">488187f8</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T13167 as fragile in threaded2

As noted in #16536.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/9b5833208bdbac027c960da13bb4184125d596a5">9b583320</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T13910 as broken in optasm

Due to #16537.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/eb644865b1f5723ddc4e5a1c0187a116fa4cb175">eb644865</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T14761c as broken in hpc, profasm, and optasm ways

As noted in #16540.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/1a204e07119ed81fc593457372229bef26f48dbe">1a204e07</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T16180 as broken in ghci and ext-interp ways

As noted in #16541.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/8d482e45590d01e6779f6f675911ffa1067ad981">8d482e45</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:19:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Omit tcrun022 in hpc way

As noted in #16542, the expected rule doesn't fire. However, this
doesn't seem terribly surpring given the circumstances.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/68cfdfdb8775ff28a20131248beec7ac0906aeac">68cfdfdb</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark Overflow as broken in hpc way

As noted in #16543.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/a3929a4fa7d38153ba8ced674af78e073d3078aa">a3929a4f</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T2783 as fragile in threaded1

It was previously marked as broken but it passes non-deterministically.
See #2783.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/bb7ed32f2a147007a224928534a7c461e5a6d429">bb7ed32f</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Skip T7919 in ghci way

It times out pretty reliably. It's not clear that much is gained by
running this test in the ghci way anyways.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/329dcd7a59e7d46cb5110e1dfb9f8b7f50f0e3a2">329dcd7a</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Fix fragile_for test modifier
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/55b5bb14b9a2487bab80411776ae34c143eddb1a">55b5bb14</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Fix omit_ways usage

omit_ways expects a list but this was broken in several cases.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/264ad286086041f52d841ff4fe7c342a242b033d">264ad286</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark threadstatus-T9333 as fragile in ghci way

As noted in #16555.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/587bef669c600a0e5b57d69c971304dc9c8b9923">587bef66</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Omit profasm way for cc017

cc017 requires TH but we can't load dynamic profiled objects.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/dc5a37fdc27e3420b3e6fd2fa6674cc172daaaae">dc5a37fd</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Skip T493 in ghci way.

T493 tests #493, which is an FFI test. FFI tests should be skipped
in ghci way.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e3f71d0e9e7d27b93b9fcd0e5b5d4cacc6718d39">e3f71d0e</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T16449_2 as broken due to #16742
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/b5a13a1e40da43d115786bac3a7f8bf0e7849db1">b5a13a1e</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T16737 as broken in ghci way due to #16541
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/b09374a4a839c2587a738698133465c4b9277c3b">b09374a4</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Note intentional typo in T7130

I earlier accidentally corrected it breaking the test.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/a798c130b3adc6c336856243a14175d4bd7c770f">a798c130</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">linters/check-makefiles: Limit lint to Makefiles

Previously we would apply this rule, which is only intended for
testsuite Makefiles, to all files. This lead to a number of
false-positives in all.T files.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0782141ef52c72523b82cd83b7466a3a65d94a31">0782141e</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Fetch submodules before running submodule linter
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/898f7e9235eff57ececac4836f6ba74388131db2">898f7e92</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix uses of #ifdef/#ifndef

The linter now enforces our preference for `#if defined()` and
`#if !defined()`.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0a13a04c98c9b11bbd72992354a6f33d3274bb1a">0a13a04c</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:20:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump unix submodule

Marks posix002 as fragile in threaded2 way due to #16550.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/a8579e5b3fadcc7d17e97016b3ea57e78b6a1b78">a8579e5b</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:27:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">process: Bump submodule

 * Skip process005 in ghci way
 * Mark process002 as fragile in threaded2
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/3f1022c514cf2a89f4b329a898467872315477b2">3f1022c5</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:27:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Skip cgrun078 in ghci way

This test requires FFI usage.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/1cbfef47f0288a0f55e8f3db71076afd190121ca">1cbfef47</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:27:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Unbreak galois_raytrace on i386

galois_raytrace was previously broken on i386 due to use of x87
arithmethic on that platform. However,
42504f4a575395a35eec5c3fd7c9ef6e2b54e68e removes x87 support; this
resulted in an unexpected pass. Unmark this test as broken.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/20160f1a8a8ed69c168bee5c8d43373191303b3f">20160f1a</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T12:27:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Don't run tests requiring TH in profasm way when GhcDynamic

Since we can't load profiled objects when GhcDynamic==YES. Affects:

* T16737
* T16384
* T16718
* T16619
* T16190
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/7b751ed89a97545e9ff9c9814a3d5440a8d42d64">7b751ed8</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-12T21:52:35Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Bump Docker image

Fixes linters.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/5ffc266e9c5ec8ed6010835165a65bd1f6b56dd4">5ffc266e</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-13T06:48:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add a few missing llvm-targets

This should finally fix #14261.

[skip ci]
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/fc6b23be509e290f8d27775a1c637284a335ed81">fc6b23be</a></strong>
<div>
<span>by Phuong Trinh</span>
<i>at 2019-06-13T06:48:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #16525: ObjectCode freed wrongly because of lack of info header check

`checkUnload` currently doesn't check the info header of static objects.
Thus, it may free an `ObjectCode` struct wrongly even if there's still a
live static object whose info header lies in a mapped section of that
`ObjectCode`. This fixes the issue by adding an appropriate check.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/a657543c4d676b7e6e0984b72b31dd95949855e4">a657543c</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-13T06:49:25Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">PrelRules: Ensure that string unpack/append rule fires with source notes

Previously the presence of source notes could hide nested applications
of `unpackFoldrCString#` from our constant folding logic. For instance,
consider the expression:

```haskell
unpackFoldrCString# "foo" c (unpackFoldrCString# "baz" c n)
```

Specifically, ticks appearing in two places can defeat the rule:

  a. Surrounding the inner application of `unpackFoldrCString#`
  b. Surrounding the fold function, `c`

The latter caused the `str_rules` testcase to fail when `base` was built
with `-g3`.

Fixes #16740.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/e98d32a62977fe1057ebbb1b6ed8990438cb9896">e98d32a6</a></strong>
<div>
<span>by David Eichmann</span>
<i>at 2019-06-13T06:50:00Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: Track RTS library symlink targets

This requires creating RTS library symlinks when registering, outside
of the rule for the registered library file.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/35113117436c4936d97aae90693b93206d9ff213">35113117</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-06-13T06:50:37Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: Do not allow the Linux jobs to fail anymore

MR !1151 makes the Hadrian/Linux job pass by fixing the last two test failures,
so we can now be stricter and not allow those jobs to fail anymore, easily
letting us see when patches introduce test failures.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/70b5eefe09823f77bcfdd7b4fa8dbaee18ab316c">70b5eefe</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-13T06:51:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">users-guide: Fix a few markup issues

Strangely these were only causing the build to fail in the aarch64-linux
job, despite Sphinx throwing errors in all jobs I checked.

Also changes some `#ifdef`s to `#if defined` to satisfy the linter.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/9721b40db9b87c0135613649f9f1e129eb49795b">9721b40d</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-13T06:51:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Don't build PDF user's guide on AArch64

For reasons I don't understand sphinx seems to fail to produce a .idx
file for makeindex.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/d550b771f6ebb91bfe860fc08811a7d74b39eb38">d550b771</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-13T06:51:50Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Clean up .circleci

Move prepare-system.sh to .gitlab and remove everything else.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/c53dfb3b2cddfe2d00d9017c9240042cc6bc7fcf">c53dfb3b</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-13T15:52:47Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: A more portable solution to #9399

Previously we used an awful hybrid batch script/Bourne shell script to
allow this test to run both on Windows and Linux (fixing #9399).
However, this breaks on some libc implementations (e.g. musl). Fix this.

Fixes #16798.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/74b5d0496f60b30c3fd4de2e7f8a96d1c481bdd6">74b5d049</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-13T15:53:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Disable deb9-llvm job, introduce nightly LLVM job

This should help alleviate queue times as the LLVM job is one of the
longest that we have.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/5ce63d52fed05371edb34b4f330c33bc85a45127">5ce63d52</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-13T15:53:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Disable validate-x86_64-linux-deb9 job to reduce load

Enable artifacts on to ensure we have bindist coverage.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/7bc5d6c6578ab9d60a83b81c7cc14819afef32ba">7bc5d6c6</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:34:41Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Maintain separate flags for C++ compiler invocations

Previously we would pass flags intended for the C compiler to the C++
compiler (see #16738). This would cause, for instance, `-std=gnu99` to
be passed to the C++ compiler, causing spurious test failures. Fix this
by maintaining a separate set of flags for C++ compilation invocations.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/71e75ba6d892e8dfb6794f0ce70d01c9521b77c5">71e75ba6</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-06-14T03:35:19Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Remove unused Unique field from StgFCallOp

Fixes #16696
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ec25fe5986c13f673882a88a3107dfa2e0cec254">ec25fe59</a></strong>
<div>
<span>by Alp Mestanogullari</span>
<i>at 2019-06-14T03:35:56Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Hadrian: remove superfluous dependencies in Rules.Compile

Each package's object files were 'need'ing the library files of all transitive
dependencies of the current package, whichi is pointless since the said
libraries are not needed until we link those object files together.

This fixes #16759.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/3bc6df3223f62a8366e2e4267bac23aa08e6a939">3bc6df32</a></strong>
<div>
<span>by Andreas Klebinger</span>
<i>at 2019-06-14T03:36:34Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add Outputable instances for Float, Double.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/f0575cb9a59504317e6c2cc6ad54620330afc1e8">f0575cb9</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2019-06-14T11:29:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add `PmNCons` to `Check` for correct warnings in the presence of `COMPLETE` groups

Previously, we had an elaborate mechanism for selecting the warnings to
generate in the presence of different `COMPLETE` matching groups that,
albeit finely-tuned, produced wrong results from an end user's
perspective in some cases (#13363).

The underlying issue is that at the point where the `ConVar` case has to
commit to a particular `COMPLETE` group, there's not enough information
to do so and the status quo was to just enumerate all possible complete
sets nondeterministically.
The `getResult` function would then pick the outcome according to
metrics defined in accordance to the user's guide. But crucially, it
lacked knowledge about the order in which affected clauses appear,
leading to the surprising behavior in #13363.

The introduction of an `PmNCons` variant in `PmPat` fixes this: Instead
of committing to a particular `COMPLETE` group in the `ConVar` case,
we now split off the matching constructor incrementally and record the
newly covered case in `PmNCons`.
After all clauses have been processed this way, we filter out any value
vector abstractions from the uncovered set involving `PmNCons` whose set
of covered constructors completely overlap a `COMPLETE` set.
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#fd5da61396a8376845bee5cdf71aaf3c98a888ae">
<span class="deleted-file">

.circleci/config.yml
</span>
</a>
</li>
<li class="file-stats">
<a href="#56be66455261205bf0b72abe2b6de5304b7edbea">
<span class="deleted-file">

.circleci/fetch-submodules.sh
</span>
</a>
</li>
<li class="file-stats">
<a href="#1f5a0c7d612024c9508dd9b2f4f8dc750313be9a">
<span class="deleted-file">

.circleci/push-test-metrics.sh
</span>
</a>
</li>
<li class="file-stats">
<a href="#587d266bb27a4dc3022bbed44dfa19849df3044c">
.gitlab-ci.yml
</a>
</li>
<li class="file-stats">
<a href="#94d74d443c79a6f0e3f44097cf3dd2f1a34bdcbe">
.gitlab/linters/check-makefiles.py
</a>
</li>
<li class="file-stats">
<a href="#e744be31242d2de56a037bead48e7046d28c2059">
.gitlab/linters/linter.py
</a>
</li>
<li class="file-stats">
<a href="#1726cdd2367b3b0246025a33d56ad19b52d3e5d4">
.circleci/prepare-system.sh

.gitlab/prepare-system.sh
</a>
</li>
<li class="file-stats">
<a href="#9ab3868b23ed5d5a6e12ef902049902556fa4009">
aclocal.m4
</a>
</li>
<li class="file-stats">
<a href="#2f8fee2abca5d63f3b2a113efc849e4e6054c49a">
compiler/basicTypes/MkId.hs
</a>
</li>
<li class="file-stats">
<a href="#49d2d51d42e9c209de33c35681b9c9b1e912cda9">
compiler/basicTypes/NameEnv.hs
</a>
</li>
<li class="file-stats">
<a href="#2da47fed955dc80b79c67ba640b94aeecf9d5524">
compiler/basicTypes/UniqSupply.hs
</a>
</li>
<li class="file-stats">
<a href="#8d4ba78353a7c0418f662623b049e828177492a8">
compiler/cmm/CmmLint.hs
</a>
</li>
<li class="file-stats">
<a href="#ea8bbb0a899d95f501cc47d9394f2f8dd3763b18">
compiler/cmm/Hoopl/Block.hs
</a>
</li>
<li class="file-stats">
<a href="#61470c7221010080ec380a45874259d0ed73da4a">
compiler/cmm/PprC.hs
</a>
</li>
<li class="file-stats">
<a href="#c569fe5eb9284314e129c104f265fe360a4b1d3d">
compiler/codeGen/StgCmmExpr.hs
</a>
</li>
<li class="file-stats">
<a href="#4a84a32022bec03831decce7dccbe5e2f1f0f0d8">
compiler/codeGen/StgCmmExtCode.hs
</a>
</li>
<li class="file-stats">
<a href="#b9c97a47b4d7d9443a2b066938a6e4433cf11c86">
compiler/codeGen/StgCmmMonad.hs
</a>
</li>
<li class="file-stats">
<a href="#731b07c16b2f4bb31dd7defa4ceef54e74473cc7">
compiler/codeGen/StgCmmPrim.hs
</a>
</li>
<li class="file-stats">
<a href="#da5742c4b404a672740f0eef71683f5a8dd3818e">
compiler/coreSyn/CoreLint.hs
</a>
</li>
<li class="file-stats">
<a href="#bd37d71fa68b0980d832d992b427fd6a6bdb891d">
compiler/deSugar/Check.hs
</a>
</li>
<li class="file-stats">
<a href="#b330982a833038b785b1f9db1eb6ec91ded5e7f0">
compiler/deSugar/Coverage.hs
</a>
</li>
<li class="file-stats">
<a href="#7589abbc710cc40f6e48245c2bc16d69f556b714">
compiler/deSugar/PmExpr.hs
</a>
</li>
<li class="file-stats">
<a href="#584407121afc66978c814dbdb5c252118d27656a">
compiler/deSugar/PmPpr.hs
</a>
</li>
<li class="file-stats">
<a href="#379674a5063221cec43f0f659c2eb67b30339f45">
compiler/deSugar/TmOracle.hs
</a>
</li>
<li class="file-stats">
<a href="#0f33fd88c617246c7f89c4477d2d1d24f942df23">
compiler/ghc.cabal.in
</a>
</li>
<li class="file-stats">
<a href="#fd3bbb2f991fadcc57d80b64e3152d27b0a2b6f6">
compiler/ghci/ByteCodeAsm.hs
</a>
</li>
<li class="file-stats">
<a href="#95e1315fd78f0f670f8d66e1c0786eee695a7666">
compiler/ghci/ByteCodeGen.hs
</a>
</li>
<li class="file-stats">
<a href="#ceaa3a70693bfe7556310fe1489fc1e3f9d09775">
compiler/ghci/GHCi.hs
</a>
</li>
<li class="file-stats">
<a href="#47f4bea1d308dee249030e6063d92071b5aac240">
compiler/ghci/Linker.hs
</a>
</li>
<li class="file-stats">
<a href="#8edc819d4b7e02c1439ca8bb128a773a9d2ab2cd">
compiler/hsSyn/Convert.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/0a1b0efa478ca6137946d55ab56b62b41d8f9f92...f0575cb9a59504317e6c2cc6ad54620330afc1e8">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>