<!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=utf-8" http-equiv="Content-Type">
<title>
GitLab
</title>



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

<h3>
 Marge Bot pushed to branch wip/marge_bot_batch_merge_job
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/3a38ea4487173f0f8e3693a75d1c5c7d33f12f05">3a38ea44</a></strong>
<div>
<span>by Eric Crockett</span>
<i>at 2019-04-07T19:21:59Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #16282.

Previously, -W(all-)missed-specs was created with 'NoReason',
so no information about the flag was printed along with the warning.
Now, -Wall-missed-specs is listed as the Reason if it was set,
otherwise -Wmissed-specs is listed as the reason.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/3025e427efc295a7c1217fcec1e59f87a8f876c1">3025e427</a></strong>
<div>
<span>by Michal Terepeta</span>
<i>at 2019-04-08T18:19:13Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Generate straightline code for inline array allocation

GHC has an optimization for allocating arrays when the size is
statically known -- it'll generate the code allocating and initializing
the array inline (instead of a call to a procedure from
`rts/PrimOps.cmm`).

However, the generated code uses a loop to do the initialization. Since
we already check that the requested size is small (we check against
`maxInlineAllocSize`), we can generate faster straightline code instead.
This brings about 15% improvement for `newSmallArray#` in my testing and
slightly simplifies the code in GHC.

Signed-off-by: Michal Terepeta <michal.terepeta@gmail.com>
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/d487cba162f3be1d39004735540311f8760a1c93">d487cba1</a></strong>
<div>
<span>by Phuong Trinh</span>
<i>at 2019-04-08T18:19:15Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix #16500: look for interface files in -hidir flag in OneShot mode

We are currently ignoring options set in the hiDir field of hsc_dflags
when looking for interface files while compiling in OneShot mode. This
is inconsistent with the behaviour of other directory redirecting fields
(such as objectDir or hieDir). It is also inconsistent with the
behaviour of compilation in CompManager mode (a.k.a `ghc --make`) which
looks for interface files in the directory set in hidir flag. This
changes Finder.hs so that we use the value of hiDir while looking for
interface in OneShot mode.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/79ef852c3950d15ba46ec4dc22c94882b6a38d9a">79ef852c</a></strong>
<div>
<span>by Yuriy Syrovetskiy</span>
<i>at 2019-04-08T18:19:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Add `-optcxx` option (#16477)
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/7df5aedf95cb8df9f3afad9d1f1b0ac22938e4d7">7df5aedf</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2019-04-08T18:19:16Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Unmark T16190 as broken

Was broken via #16389 yet strangely it has started passing despite the
fact that the suggested root cause has not changed.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/f4814f35683d5e3d684526ef8a35b919480dd147">f4814f35</a></strong>
<div>
<span>by Yuriy Syrovetskiy</span>
<i>at 2019-04-08T18:19:17Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix whitespace style
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/ae8251b1c01510e8d0c42b3c741801efb6562231">ae8251b1</a></strong>
<div>
<span>by Matthew Pickering</span>
<i>at 2019-04-08T18:19:17Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Use ./hadrian/ghci.sh in .ghcid
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/6665a30d6d6e869d88bc935eabe7177676de358a">6665a30d</a></strong>
<div>
<span>by Sebastian Graf</span>
<i>at 2019-04-08T18:19:18Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Make `singleConstructor` cope with pattern synonyms

Previously, `singleConstructor` didn't handle singleton `COMPLETE` sets
of a single pattern synonym, resulting in incomplete pattern warnings
in #15753.

This is fixed by making `singleConstructor` (now named
`singleMatchConstructor`) query `allCompleteMatches`, necessarily making
it effectful. As a result, most of this patch is concerned with
threading the side-effect through to `singleMatchConstructor`.

Unfortunately, this is not enough to completely fix the original
reproduction from #15753 and #15884, which are related to function
applications in pattern guards being translated too conservatively.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/c2f2734ea20dba67feb4788ac8adc10194916349">c2f2734e</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-04-08T18:19:22Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Skip test ArithInt16 and ArithWord16 in GHCi way

These tests use unboxed tuples, which GHCi doesn't support
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/0eebc0a780a602cfaba929364608127a1e3960c4">0eebc0a7</a></strong>
<div>
<span>by Ömer Sinan Ağacan</span>
<i>at 2019-04-08T18:19:23Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Show exit code of GHCi tests on failure
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/27f3939f1a8a75e2bce6921c6ffbd4d23dd2f154">27f3939f</a></strong>
<div>
<span>by John Ericson</span>
<i>at 2019-04-08T18:19:24Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">settings.in: Reformat

We're might be about to switch to generating it in Hadrian/Make. This
reformat makes it easier to programmingmatically generate and end up
with the exact same thing, which is good for diffing to ensure no
regressions.

I had this as part of !712, but given the difficulty of satisfying CI, I
figured I should break things up even further.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/commit/27d0db377d53b46a4861dc977010049f6eb6088e">27d0db37</a></strong>
<div>
<span>by Ryan Scott</span>
<i>at 2019-04-08T18:19:26Z</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Bump hpc submodule

Currently, the `hpc` submodule is pinned against the `wip/final-mfp`
branch, not against `master`. This pins it back against `master`.
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#03615ac1622815b67e9829de1c43ac90fa6d8068">
.ghcid
</a>
</li>
<li class="file-stats">
<a href="#587d266bb27a4dc3022bbed44dfa19849df3044c">
.gitlab-ci.yml
</a>
</li>
<li class="file-stats">
<a href="#731b07c16b2f4bb31dd7defa4ceef54e74473cc7">
compiler/codeGen/StgCmmPrim.hs
</a>
</li>
<li class="file-stats">
<a href="#bd37d71fa68b0980d832d992b427fd6a6bdb891d">
compiler/deSugar/Check.hs
</a>
</li>
<li class="file-stats">
<a href="#0b786457b007c51108f80d6a03e3850281d3fa52">
compiler/main/DriverPhases.hs
</a>
</li>
<li class="file-stats">
<a href="#72690aad4036dea6e6e116c30e4d7582f5077db7">
compiler/main/DriverPipeline.hs
</a>
</li>
<li class="file-stats">
<a href="#11e9bfd841c4163c1919b5e07efc84740e02010f">
compiler/main/DynFlags.hs
</a>
</li>
<li class="file-stats">
<a href="#b0bba1596a6b3a24eddc0a21c5ccb2ea48a655e5">
compiler/main/Finder.hs
</a>
</li>
<li class="file-stats">
<a href="#a7d05a7194ce9665362b8cb2a6e3cb5bd39f2965">
compiler/main/HscTypes.hs
</a>
</li>
<li class="file-stats">
<a href="#63c9d6e17d26bbb7f2d71094f5ffa2c67769ada0">
compiler/main/SysTools.hs
</a>
</li>
<li class="file-stats">
<a href="#23fd164407d5a67f4b133b7d27b39c378929f165">
compiler/main/SysTools/ExtraObj.hs
</a>
</li>
<li class="file-stats">
<a href="#4039dc9c5a155ac264cf84037271eb8259a3f0a7">
compiler/main/SysTools/Tasks.hs
</a>
</li>
<li class="file-stats">
<a href="#50402e2a64c9aa60a1a76e237271322d2f6325dc">
compiler/simplCore/CoreMonad.hs
</a>
</li>
<li class="file-stats">
<a href="#8e5716cfebabf9b3b1774b148dca4e897301a054">
compiler/specialise/Specialise.hs
</a>
</li>
<li class="file-stats">
<a href="#12f1226bde7e9f48203d34d8d857513f2f1f4d75">
docs/users_guide/phases.rst
</a>
</li>
<li class="file-stats">
<a href="#593826b927fccedf47c9d06b81f8ce8e2195ad81">
docs/users_guide/separate_compilation.rst
</a>
</li>
<li class="file-stats">
<a href="#e092c30d71f5634574e33ad2130bfbfc8a7555b9">
libraries/ghc-prim/cbits/bitrev.c
</a>
</li>
<li class="file-stats">
<a href="#42bcd36e5791e64370e1cb55417c82c34538bb7a">
libraries/hpc
</a>
</li>
<li class="file-stats">
<a href="#8523d6dd893c848944aff860075c6065b84de3c1">
settings.in
</a>
</li>
<li class="file-stats">
<a href="#c591f85f122007bac88228c5ff6fd76b40e6a811">
testsuite/driver/testlib.py
</a>
</li>
<li class="file-stats">
<a href="#d4ddd39e85fde144f74d1eab3694c38ac31f273e">
<span class="new-file">
+
testsuite/tests/codeGen/should_run/NewSmallArray.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#05a0664ae7496d3636d6c505b521d1fc4e787b90">
<span class="new-file">
+
testsuite/tests/codeGen/should_run/NewSmallArray.stdout
</span>
</a>
</li>
<li class="file-stats">
<a href="#b9bba9766faf563ab195fb1402f14fa78ad5c66f">
testsuite/tests/codeGen/should_run/all.T
</a>
</li>
<li class="file-stats">
<a href="#a9b486d322065d4efb0f7e9097920dd548a4aff3">
<span class="new-file">
+
testsuite/tests/driver/T16500/A.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#f14283c39e06e596b387da4f1f36e2d2d86de3fb">
<span class="new-file">
+
testsuite/tests/driver/T16500/B.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#0c2d787af47fba93d12767f6e040777f6d50b81c">
<span class="new-file">
+
testsuite/tests/driver/T16500/Makefile
</span>
</a>
</li>
<li class="file-stats">
<a href="#4dd5abc24f4813498dc9bc3532dc0db2c107fbae">
<span class="new-file">
+
testsuite/tests/driver/T16500/T16500.stdout
</span>
</a>
</li>
<li class="file-stats">
<a href="#ec8cea2a2dfeb045ae39acc0c4deec444aa84ebd">
<span class="new-file">
+
testsuite/tests/driver/T16500/all.T
</span>
</a>
</li>
<li class="file-stats">
<a href="#2d522582226c5b506f235d327c55398645c7877c">
testsuite/tests/ffi/should_compile/all.T
</a>
</li>
<li class="file-stats">
<a href="#733aaa90c54ad51d2667daa9e1f051d9df876036">
<span class="new-file">
+
testsuite/tests/ffi/should_compile/cc017.hs
</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/f4fc54c12b2d6a25497fab30dbef2a0d94183f55...27d0db377d53b46a4861dc977010049f6eb6088e">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>