<!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/T7275
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/62ed6957463a9c0f711ea698d7ed4371e00fb122">62ed6957</a></strong>
<div>
<span>by Simon Peyton Jones</span>
<i>at 2020-12-08T15:31:41-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">Fix kind inference for data types. Again.
This patch fixes several aspects of kind inference for data type
declarations, especially data /instance/ declarations
Specifically
1. In kcConDecls/kcConDecl make it clear that the tc_res_kind argument
is only used in the H98 case; and in that case there is no result
kind signature; and hence no need for the disgusting splitPiTys in
kcConDecls (now thankfully gone).
The GADT case is a bit different to before, and much nicer.
This is what fixes #18891.
See Note [kcConDecls: kind-checking data type decls]
2. Do not look at the constructor decls of a data/newtype instance
in tcDataFamInstanceHeader. See GHC.Tc.TyCl.Instance
Note [Kind inference for data family instances]. This was a
new realisation that arose when doing (1)
This causes a few knock-on effects in the tests suite, because
we require more information than before in the instance /header/.
New user-manual material about this in "Kind inference in data type
declarations" and "Kind inference for data/newtype instance
declarations".
3. Minor improvement in kcTyClDecl, combining GADT and H98 cases
4. Fix #14111 and #8707 by allowing the header of a data instance
to affect kind inferece for the the data constructor signatures;
as described at length in Note [GADT return types] in GHC.Tc.TyCl
This led to a modest refactoring of the arguments (and argument
order) of tcConDecl/tcConDecls.
5. Fix #19000 by inverting the sense of the test in new_locs
in GHC.Tc.Solver.Canonical.canDecomposableTyConAppOK.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/0abe3ddf85a915ab99ae4f87a85faf6ee5466ad3">0abe3ddf</a></strong>
<div>
<span>by Adam Sandberg Ericsson</span>
<i>at 2020-12-08T15:32:19-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">hadrian: build the _l and _thr_l rts flavours in the develN flavours
The ghc binary requires the eventlog rts since
fc644b1a643128041cfec25db84e417851e28bab
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/d6167537fd7b185bc18fdc4d2a9cf5a562852a10">d6167537</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-12-09T16:25:25-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Break up census logic
Move the logic for taking censuses of "normal" and pinned blocks to
their own functions.
</pre>
</li>
<li>
<strong><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/f93230f4eeb1b79871c7a53a2b7af921f6804c3f">f93230f4</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-12-09T16:25:25-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">rts: Implement heap census support for pinned objects
It turns out that this was fairly straightforward to implement since we
are now pretty careful about zeroing slop.
</pre>
</li>
</ul>
<h4>30 changed files:</h4>
<ul>
<li class="file-stats">
<a href="#576dff4e64fa03683ffc5dcdd58284acdd70bc8e">
compiler/GHC/Hs/Extension.hs
</a>
</li>
<li class="file-stats">
<a href="#9355bef855426caf5f526925edf351b20f9a86c4">
compiler/GHC/Tc/Gen/HsType.hs
</a>
</li>
<li class="file-stats">
<a href="#f018e77421f495c6f75733fee4a511cfe57bebe8">
compiler/GHC/Tc/Solver/Canonical.hs
</a>
</li>
<li class="file-stats">
<a href="#83d23a46bb6cdc8b1edc16f1fd2c8f5c53e2c9ca">
compiler/GHC/Tc/TyCl.hs
</a>
</li>
<li class="file-stats">
<a href="#e63425e031ffe9350ee6b1687e506aaea75d11e1">
compiler/GHC/Tc/TyCl/Instance.hs
</a>
</li>
<li class="file-stats">
<a href="#d87dfc77856eeaef6134e28336290ddcbcf18d7d">
docs/users_guide/9.2.1-notes.rst
</a>
</li>
<li class="file-stats">
<a href="#fa050e1532c92b2ffc94692d8b368f3fefa3196d">
docs/users_guide/exts/poly_kinds.rst
</a>
</li>
<li class="file-stats">
<a href="#6d5bb3f66af29932d469deefe0f4351faf14a304">
hadrian/src/Settings/Flavours/Development.hs
</a>
</li>
<li class="file-stats">
<a href="#49d63c99feec397a2d9c3692f6d9f1c7698c81d0">
rts/ProfHeap.c
</a>
</li>
<li class="file-stats">
<a href="#05e2feaa7ccbd427e12a90d25808ead5ec587c63">
testsuite/tests/dependent/should_fail/T13780a.stderr
</a>
</li>
<li class="file-stats">
<a href="#526bbf30531cad446c3194aa829668c9c4650b0a">
testsuite/tests/deriving/should_compile/T11416.hs
</a>
</li>
<li class="file-stats">
<a href="#5b83e99d7c85673bbd8af817bf225cf3695013b9">
testsuite/tests/deriving/should_compile/T9359.hs
</a>
</li>
<li class="file-stats">
<a href="#94292f469539d175687337f47cccb30eaba2e6fc">
<span class="new-file">
+
testsuite/tests/gadt/SynDataRec.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#c68bb340f8f227ab4ac9922422ce0177433e1dfc">
testsuite/tests/gadt/all.T
</a>
</li>
<li class="file-stats">
<a href="#f40c9b04fcb3dedd30e8d1d111028fd38a3bd533">
<span class="new-file">
+
testsuite/tests/indexed-types/should_compile/T14111.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#ebaa39285a49455fd932d452d44b589c7d50f8f3">
<span class="new-file">
+
testsuite/tests/indexed-types/should_compile/T8707.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#58b9bc2ffb1c7d7b545e6aada524a5d53266e95e">
testsuite/tests/indexed-types/should_compile/all.T
</a>
</li>
<li class="file-stats">
<a href="#9ce3533e3d2bdc2ed2d290e31021207c39fd5729">
testsuite/tests/indexed-types/should_fail/T8368.stderr
</a>
</li>
<li class="file-stats">
<a href="#022292799466b9b31e4522069903c5b0fac15e9c">
testsuite/tests/indexed-types/should_fail/T8368a.stderr
</a>
</li>
<li class="file-stats">
<a href="#bc4ffdf271cd138b7e3e72937084080b70f4e95b">
testsuite/tests/patsyn/should_fail/T15685.stderr
</a>
</li>
<li class="file-stats">
<a href="#9cf9e43ad6ba49c6f9ba05365e796e4358376763">
testsuite/tests/polykinds/T13659.stderr
</a>
</li>
<li class="file-stats">
<a href="#4af4eaeded9c126e6a4ee186db90f5b886b80799">
testsuite/tests/polykinds/T16221a.stderr
</a>
</li>
<li class="file-stats">
<a href="#5c74fb2bdbb2042694ffd2e618b0efb408c68d8e">
testsuite/tests/th/T11145.stderr
</a>
</li>
<li class="file-stats">
<a href="#963e82a98233f65b20b6eed015bb2bd423433593">
testsuite/tests/th/T9692.hs
</a>
</li>
<li class="file-stats">
<a href="#dac489fd9971f93cf5f4c1655e3ab898e190a541">
<span class="new-file">
+
testsuite/tests/typecheck/should_compile/T18891.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#460a0a2288242ede875741a395ec8673b7a822d0">
testsuite/tests/typecheck/should_compile/UnliftedNewtypesUnassociatedFamily.hs
</a>
</li>
<li class="file-stats">
<a href="#8a9c9b7ef8854c111f962e63af9191c2300a6382">
testsuite/tests/typecheck/should_compile/UnliftedNewtypesUnifySig.hs
</a>
</li>
<li class="file-stats">
<a href="#34fe7bf0e6fbf60effb28393399ba68666593909">
testsuite/tests/typecheck/should_compile/all.T
</a>
</li>
<li class="file-stats">
<a href="#4968e845853db814d0441fbf636d7b942d6beca2">
<span class="new-file">
+
testsuite/tests/typecheck/should_fail/T18891a.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#00704c21d708b5b0eae6c68bd8d6a0559be1c753">
<span class="new-file">
+
testsuite/tests/typecheck/should_fail/T18891a.stderr
</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: #666;">
—
<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/compare/48beb6035a1727e8688fef9f974d52dfca1d1fab...f93230f4eeb1b79871c7a53a2b7af921f6804c3f">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>