<!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>
Ben Gamari pushed to branch wip/fix-windows
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/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/f0ad94082895794e27f2fc453269a59f0e39cdc0">f0ad9408</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:29:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Skip dynamicToo006 when dynamic linking is not available

This was previously failling on Windows.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/214c0d9978f831b5665528bff17ad74d17ea03a4">214c0d99</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:29:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T3372 as fragile on Windows

On Windows we must lock package databases even when opening for
read-only access. This means that concurrent GHC sessions are very
likely to fail with file lock contention.

See #16773.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/fecb46032d3d9e1b1f84a4c810ea13d8990dc286">fecb4603</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:29:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Add stderr output for UnsafeInfered02 on Windows

This test uses TemplateHaskell causing GHC to build dynamic objects on
platforms where dynamic linking is available. However, Windows doesn't support
dynamic linking. Consequently the test would fail on Windows with:

```patch
--- safeHaskell/safeInfered/UnsafeInfered02.run/UnsafeInfered02.stderr.normalised       2019-06-04 15:10:10.521594200 +0000
+++ safeHaskell/safeInfered/UnsafeInfered02.run/UnsafeInfered02.comp.stderr.normalised  2019-06-04 15:10:10.523546200 +0000
@@ -1,5 +1,5 @@
-[1 of 2] Compiling UnsafeInfered02_A ( UnsafeInfered02_A.hs, UnsafeInfered02_A.o, UnsafeInfered02_A.dyn_o )
-[2 of 2] Compiling UnsafeInfered02  ( UnsafeInfered02.hs, UnsafeInfered02.o, UnsafeInfered02.dyn_o )
+[1 of 2] Compiling UnsafeInfered02_A ( UnsafeInfered02_A.hs, UnsafeInfered02_A.o )
+[2 of 2] Compiling UnsafeInfered02  ( UnsafeInfered02.hs, UnsafeInfered02.o )

 UnsafeInfered02.hs:4:1:
     UnsafeInfered02_A: Can't be safely imported!
```

The other approach I considered for this issue is to pass `-v0` to GHC.
However, I felt we should probably do this consistently for all of the tests in
this directory and this would take more time than I currently have.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/23f66f0316b7fbaeedae8f17ebe841ea62f1ee85">23f66f03</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:29:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark OldModLocation as broken on Windows

Strangely the path it emits contains duplicate path delimiters (#16772),
```patch
--- ghc-api/downsweep/OldModLocation.run/OldModLocation.stderr.normalised       2019-06-04 14:40:26.326075000 +0000
+++ ghc-api/downsweep/OldModLocation.run/OldModLocation.run.stderr.normalised   2019-06-04 14:40:26.328029200 +0000
@@ -1 +1 @@
-[Just "A.hs",Just "mydir/B.hs"]
+[Just "A.hs",Just "mydir//B.hs"]
```
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/1f70a38e511aac1f1d001c082410094e1040e412">1f70a38e</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:29:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T7170 as broken on Windows

Due to #16801.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/278eb7944bf0aa514c3b2e60fdbbb3016b0ab273">278eb794</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:29:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T7702 as broken on Windows

Due to #16799.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/acd586ced57b0a4b2a8a3d236fb1f05f06115232">acd586ce</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:29:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Don't allow Windows make job to fail

While linking is still slow (#16084) all of the correctness issues which were
preventing us from being able to enforce testsuite-green on Windows are now
resolved.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0a0d92e3f777c39489e768051c7d2af5acc53219">0a0d92e3</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-06-14T03:29:27Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Mark T15633a and T15633b as fragile on Windows

As noted in #16813, these tests seem to be fragile on Windows.
</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="#1726cdd2367b3b0246025a33d56ad19b52d3e5d4">
.circleci/prepare-system.sh

.gitlab/prepare-system.sh
</a>
</li>
<li class="file-stats">
<a href="#844514241b3e1a009f66bf594cbb57fef61482fb">
compiler/prelude/PrelRules.hs
</a>
</li>
<li class="file-stats">
<a href="#2b8f04584fafff0b8f78c8867b06665527f31762">
docs/users_guide/ffi-chap.rst
</a>
</li>
<li class="file-stats">
<a href="#b02c1c6109c60b8f685234b0dbaabf6c79fed2a2">
docs/users_guide/ghci.rst
</a>
</li>
<li class="file-stats">
<a href="#b71856f5728e262c6f67455997507c6fa2ede3b9">
hadrian/src/Hadrian/Utilities.hs
</a>
</li>
<li class="file-stats">
<a href="#fb6173313439af46b3054cb59d8b9287eaae035c">
hadrian/src/Rules/Library.hs
</a>
</li>
<li class="file-stats">
<a href="#ef0fda717f83e7f21f0e70684ddfdf0df9ef8b36">
hadrian/src/Rules/Program.hs
</a>
</li>
<li class="file-stats">
<a href="#ea44ae2bf75a7ad281e1a9eae011461c5487ed17">
hadrian/src/Rules/Register.hs
</a>
</li>
<li class="file-stats">
<a href="#b665327fce14433ece4212414e3ac172b9b704a8">
hadrian/src/Rules/Rts.hs
</a>
</li>
<li class="file-stats">
<a href="#b817c80cbb15890d9a6df41e91d15d7442471f3c">
libraries/base/tests/all.T
</a>
</li>
<li class="file-stats">
<a href="#c2ab2bd34647724dd6893097f5bd58f23cecc374">
libraries/base/tests/enum01.hs
</a>
</li>
<li class="file-stats">
<a href="#12b8354242f51886d5639a8c034a179b9bd6a95d">
libraries/base/tests/enum02.hs
</a>
</li>
<li class="file-stats">
<a href="#6d42faa3a25322652c8654b21c8c8cada48b35fe">
libraries/base/tests/enum03.hs
</a>
</li>
<li class="file-stats">
<a href="#1e7f13e7a38c1d9993e8cc009638206295da4de4">
libraries/base/tests/enum_processor.bat
</a>
</li>
<li class="file-stats">
<a href="#f50dcd395cb0843eaf5563a7ec8dfdab579457e6">
libraries/base/tests/enum_processor.py
</a>
</li>
<li class="file-stats">
<a href="#7e3bf511f901d9696a9dc8fa89ada599424b1a43">
libraries/ghc-boot/GHC/PackageDb.hs
</a>
</li>
<li class="file-stats">
<a href="#3038e2d06a896e58c8bd2f609694dfd16c75d8df">
llvm-targets
</a>
</li>
<li class="file-stats">
<a href="#ba1d62598dfbf5ddb817dd9c93461a02a0bba43d">
rts/CheckUnload.c
</a>
</li>
<li class="file-stats">
<a href="#044fe9284335a9bfd17546e06c2e5c40a680dd3d">
rts/Linker.c
</a>
</li>
<li class="file-stats">
<a href="#ff22a2ef046b1fcf2beee0d03afebc155405a6d3">
rts/linker/M32Alloc.c
</a>
</li>
<li class="file-stats">
<a href="#bd582795756437dfe5c8daa9a9bf24ecdf094888">
testsuite/tests/driver/dynamicToo/dynamicToo006/all.T
</a>
</li>
<li class="file-stats">
<a href="#fbea9a6392407b0fa9ede5b9aa0bb2445af9de4b">
testsuite/tests/ffi/should_run/all.T
</a>
</li>
<li class="file-stats">
<a href="#4ced41462cd902cc48ac9b0ccb60f55a34b517bb">
testsuite/tests/ghc-api/downsweep/all.T
</a>
</li>
<li class="file-stats">
<a href="#c37c997612e93ba1144504b5c2adf53ee01c50db">
<span class="new-file">
+
testsuite/tests/ghci/T16525a/A.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#3e2e55e0961e2eacca9829efde3beff5678bd8ab">
<span class="new-file">
+
testsuite/tests/ghci/T16525a/B.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#26627baa966cfbb2801731d80e40d9793c23ab55">
<span class="new-file">
+
testsuite/tests/ghci/T16525a/T16525a.script
</span>
</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/547c48a8b1b0ce7f5f8d8ca0bf8b3ea0aeaa1f71...0a0d92e3f777c39489e768051c7d2af5acc53219">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>