<!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/tyconapp-opts
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/e0b08c5f445f70381c854f78913489685feb224e">e0b08c5f</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-12-03T13:01:47-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Fix copy-paste error

Also be more consistent in quoting.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/33ec3a0600fe8c009ab8ed6d86941a8fd88fb033">33ec3a06</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-12-03T23:11:31-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">gitlab-ci: Run linters through ci.sh

Ensuring that the right toolchain is used.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/4a437bc19d2026845948356a932b2cac2417eb12">4a437bc1</a></strong>
<div>
<span>by Shayne Fletcher</span>
<i>at 2020-12-05T09:06:38-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix bad span calculations of post qualified imports
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/8fac4b9333ef3607e75b4520d847054316cb8c2d">8fac4b93</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-12-05T09:07:13-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">testsuite: Add a test for #18923
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2eb43a4686bd27237749b711da4b7301a857388b">2eb43a46</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-12-06T11:30:14-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Optimise nullary type constructor usage

During the compilation of programs GHC very frequently deals with
the `Type` type, which is a synonym of `TYPE 'LiftedRep`. This patch
teaches GHC to avoid expanding the `Type` synonym (and other nullary
type synonyms) during type comparisons, saving a good amount of work.
This optimisation is described in `Note [Comparing nullary type
synonyms]`.

To maximize the impact of this optimisation, we introduce a few
special-cases to reduce `TYPE 'LiftedRep` to `Type`. See
`Note [Prefer Type over TYPE 'LiftedPtrRep]`.

Closes #17958.

Metric Decrease:
   T18698b
   T1969
   T12227
   T12545
   T12707
   T14683
   T3064
   T5631
   T5642
   T9020
   T9630
   T9872a
   T13035
   haddock.Cabal
   haddock.base
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#587d266bb27a4dc3022bbed44dfa19849df3044c">
.gitlab-ci.yml
</a>
</li>
<li class="file-stats">
<a href="#157f7634c25bc6366cb7c9c9edb48e819dce38db">
.gitlab/ci.sh
</a>
</li>
<li class="file-stats">
<a href="#377cfd14c1f92357465df995ec6537b074051322">
compiler/GHC/Builtin/Types.hs
</a>
</li>
<li class="file-stats">
<a href="#8a5cd068459120cddf3814e7b9e02003b87647ba">
compiler/GHC/Builtin/Types/Prim.hs
</a>
</li>
<li class="file-stats">
<a href="#26a4620a80da2cc1c44d4e84ca58cf0393140be4">
<span class="new-file">
+
compiler/GHC/Builtin/Types/Prim.hs-boot
</span>
</a>
</li>
<li class="file-stats">
<a href="#578c7c3857d66d963736ff6742f3433a0e8d01b7">
compiler/GHC/Core/TyCo/Rep.hs
</a>
</li>
<li class="file-stats">
<a href="#8ee6f6851986ea96987a52f1dbf39228c85c6032">
compiler/GHC/Core/TyCo/Subst.hs
</a>
</li>
<li class="file-stats">
<a href="#4aad0050db1a8a20db8bbca149111de99cb299c9">
compiler/GHC/Core/TyCon.hs
</a>
</li>
<li class="file-stats">
<a href="#84c9d3ba34173297e7d7747e02caa2e004b164fc">
compiler/GHC/Core/Type.hs
</a>
</li>
<li class="file-stats">
<a href="#89a2e0e1a3095c7a42b10f2819049908908080e8">
compiler/GHC/Core/Unify.hs
</a>
</li>
<li class="file-stats">
<a href="#bf951467d4a9aa443cb109cb4c84a2891945649b">
compiler/GHC/Parser.y
</a>
</li>
<li class="file-stats">
<a href="#f018e77421f495c6f75733fee4a511cfe57bebe8">
compiler/GHC/Tc/Solver/Canonical.hs
</a>
</li>
<li class="file-stats">
<a href="#94c96afe1bb3b771ffbcfeeca34ce43ebbe76ccb">
compiler/GHC/Tc/Utils/TcMType.hs
</a>
</li>
<li class="file-stats">
<a href="#5461e7beeb7ae73d7c01f720cbaa3fa2c5333590">
compiler/GHC/Tc/Utils/TcType.hs
</a>
</li>
<li class="file-stats">
<a href="#71247aaad504d89a31c398d6edd6cfc090975b86">
testsuite/tests/deSugar/should_compile/T2431.stderr
</a>
</li>
<li class="file-stats">
<a href="#d67e8c37b660b851784cafe36eb0327428012ff0">
testsuite/tests/deriving/should_compile/T14578.stderr
</a>
</li>
<li class="file-stats">
<a href="#0c45984ad9bf4e57b152ed07fcb1b36bf1196441">
testsuite/tests/module/all.T
</a>
</li>
<li class="file-stats">
<a href="#b72c9502db1b9c9be832b191ec3cd017532de9c7">
<span class="new-file">
+
testsuite/tests/module/mod185.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#25f68703f1d1ef244aacacbbc84228236161761c">
<span class="new-file">
+
testsuite/tests/module/mod185.stderr
</span>
</a>
</li>
<li class="file-stats">
<a href="#cdceccb198a94a34591985d359d4fdb59671529c">
<span class="new-file">
+
testsuite/tests/perf/compiler/T18923.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#fd4a0b65d74153aed8b33b01a04eb3ff7442cd45">
testsuite/tests/perf/compiler/all.T
</a>
</li>
<li class="file-stats">
<a href="#dc68aa327473792cf23fedfcbad450e34e56f56f">
testsuite/tests/plugins/plugins09.stdout
</a>
</li>
<li class="file-stats">
<a href="#4b32b5c1cf00c5849e529e1eb08f799cc7bcf4e2">
testsuite/tests/plugins/plugins10.stdout
</a>
</li>
<li class="file-stats">
<a href="#3a1fc7da4889c22c227a7249f7c7a1820810e3cc">
testsuite/tests/plugins/plugins11.stdout
</a>
</li>
<li class="file-stats">
<a href="#b29afe9cf4090c785dc143f1317b9cb5c13c3e18">
testsuite/tests/plugins/static-plugins.stdout
</a>
</li>
<li class="file-stats">
<a href="#4eac8054f8dc90b076e0df14ffea14d1df68e1b4">
testsuite/tests/printer/T18052a.stderr
</a>
</li>
<li class="file-stats">
<a href="#6e2ce964ea02e92c2202946150700a3219beed86">
testsuite/tests/simplCore/should_compile/T13143.stderr
</a>
</li>
<li class="file-stats">
<a href="#993d82b169a2a16b1d68eb2d5844a5489b23fdfe">
testsuite/tests/simplCore/should_compile/T18013.stderr
</a>
</li>
<li class="file-stats">
<a href="#0e264f20bcb9f21ef8f19196ea35fb751107dd1f">
testsuite/tests/simplCore/should_compile/T7360.stderr
</a>
</li>
<li class="file-stats">
<a href="#51723dde3051f561e04adee630dad4dc1f195a1e">
testsuite/tests/typecheck/should_compile/T13032.stderr
</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: #666;">

<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/compare/53c0b472dbdddea7ca4eb366c982509866ee2665...2eb43a4686bd27237749b711da4b7301a857388b">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>