<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en" style='--code-editor-font: var(--default-mono-font, "GitLab Mono"), JetBrains Mono, Menlo, DejaVu Sans Mono, Liberation Mono, Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospace;'>
<head>
<meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
<title>
GitLab
</title>
<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>
<style>img {
max-width: 100%; height: auto;
}
body {
font-size: .875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px;
}
body {
font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style='font-size: inherit; -webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px; font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";'>
<div class="content">
<h3 style="margin-top: 20px; margin-bottom: 10px;">
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 style="margin-top: 10px; margin-bottom: 10px;">
Commits:
</h4>
<ul>
<li>
<strong style="font-weight: 600;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/324222bd2d67af2131f5355cb220584bd499295f">324222bd</a></strong>
<div>
<span> by Oleg Grenrus </span> <i> at 2025-03-08T08:50:18-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Run fix-whitespace on compiler/
https://hackage.haskell.org/package/fix-whitespace
IMO this should be included into lint suite
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/2793eb47dda0da74fc1bf3425d4ec43b93c2dbb0">2793eb47</a></strong>
<div>
<span> by sheaf </span> <i> at 2025-03-08T09:22:05-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Allow defaulting of representational equalities
This commit generalises the defaulting of equality constraints that
was introduced in 663daf8d (with follow-up in 6863503c) to allow
the defaulting of *representational* equality constraints.
Now we default a representational equality
ty1 ~R# ty2
by unifying ty1 ~# ty2.
This allows the following defaulting to take place:
- Coercible alpha[tau] Int ==> alpha := Int
- Coercible (IO beta[tau]) (IO Char) ==> beta := Char
See Note [Defaulting representational equalities] in GHC.Tc.Solver.Default
for more details.
Fixes #21003
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/aaf117479a23a760cdb57631bb9af7ba0039ab40">aaf11747</a></strong>
<div>
<span> by Andreas Klebinger </span> <i> at 2025-03-08T09:22:07-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Revert "Use `Infinite` in unique generation, and clean up some other partial uni patterns as well."
This reverts commit 643dd3d86968c527ba07ece9cc337728dbdfe2a0.
As described in #25817 this commit introduced a subtle bug in AArch64
code generation. So for the time being I will simply revert it
wholesale.
</pre>
</li>
<li>
<strong style="font-weight: 600;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/c64d5f466fc9f1cd8d42e0f79a6ba0d526788579">c64d5f46</a></strong>
<div>
<span> by Andreas Klebinger </span> <i> at 2025-03-08T09:22:08-05:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 14px; color: #3a383f; position: relative; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; word-break: break-all; word-wrap: break-word; background-color: #fbfafd; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>Properly describe acceptance window for stat tests.
The relative metric is already in %, so no need to multiply by 100.
</pre>
</li>
</ul>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
50 changed files:
</h4>
<ul>
<li class="file-stats">
<a href="#d088ba20f051734394bf7ca283f33ed8127bc8ab">
compiler/GHC/Cmm/CallConv.hs
</a>
</li>
<li class="file-stats">
<a href="#95111d27913460e138e20c87f610b61c3745ab2b">
compiler/GHC/Cmm/Liveness.hs
</a>
</li>
<li class="file-stats">
<a href="#194e2602b82bb08fd31c3028aace1da113aae36f">
compiler/GHC/Cmm/ThreadSanitizer.hs
</a>
</li>
<li class="file-stats">
<a href="#6997a0cd37829d3d08db1c48185aaa3d7dfc3e6b">
compiler/GHC/CmmToAsm/AArch64/CodeGen.hs
</a>
</li>
<li class="file-stats">
<a href="#e7e32ef13a93a68891f700047f89c45df0e3772d">
compiler/GHC/CmmToAsm/Reg/Linear/Base.hs
</a>
</li>
<li class="file-stats">
<a href="#522ba674004d5ebf69a7ec80b0d7c765e08b60cc">
compiler/GHC/CmmToAsm/X86/RegInfo.hs
</a>
</li>
<li class="file-stats">
<a href="#e9dcf226ea260581a815d3eaff0049e11529205c">
compiler/GHC/Core/LateCC/TopLevelBinds.hs
</a>
</li>
<li class="file-stats">
<a href="#cc763cdd1967f5d921161a32f64136cfcf0332c5">
compiler/GHC/Core/Opt/SetLevels.hs
</a>
</li>
<li class="file-stats">
<a href="#48fbb5cdea308650de5756521feb28ec68819b9b">
compiler/GHC/Core/Opt/Simplify/Utils.hs
</a>
</li>
<li class="file-stats">
<a href="#f4421b4e35592648510c877ecf55b1af2b96dcee">
compiler/GHC/Core/Opt/WorkWrap/Utils.hs
</a>
</li>
<li class="file-stats">
<a href="#708fab0a51bd47227233eda4698e750ff6de66e0">
compiler/GHC/Core/Subst.hs
</a>
</li>
<li class="file-stats">
<a href="#28df9b7ff357d56663fd29efdad1c6b9bad3022f">
compiler/GHC/Data/BooleanFormula.hs
</a>
</li>
<li class="file-stats">
<a href="#937a39dca562f090f912637f78379d3c3b2eeb73">
compiler/GHC/Data/Graph/Color.hs
</a>
</li>
<li class="file-stats">
<a href="#9f00edfedb0f969865b049a78de3866545b4a60b">
compiler/GHC/Hs/Instances.hs
</a>
</li>
<li class="file-stats">
<a href="#9d5e079d485f99a5b74aa1ca1bc3c06bc1d24b6f">
compiler/GHC/Hs/Specificity.hs
</a>
</li>
<li class="file-stats">
<a href="#12fae53271ab8929046115ab04711a1075fef5bf">
compiler/GHC/Iface/Env.hs
</a>
</li>
<li class="file-stats">
<a href="#06ff7bac58fd8cfe0c17b81963b03f4cce86a065">
compiler/GHC/IfaceToCore.hs
</a>
</li>
<li class="file-stats">
<a href="#f838e6469f8338f571c738aef74bcfade5c55385">
compiler/GHC/JS/Opt/Expr.hs
</a>
</li>
<li class="file-stats">
<a href="#376629173e8363c8ea56574c5b4c363c168a3f4d">
compiler/GHC/JS/Opt/Simple.hs
</a>
</li>
<li class="file-stats">
<a href="#5d4c55e1c5331edcc6048718fd9fc96a66c0b3ac">
compiler/GHC/Platform/LoongArch64.hs
</a>
</li>
<li class="file-stats">
<a href="#173c7eb846a4e9b5fee79688a72cbf6a326e4e1e">
compiler/GHC/Runtime/Eval.hs
</a>
</li>
<li class="file-stats">
<a href="#4675150d494f381e32f32e7b58c494b88e8d2584">
compiler/GHC/Stg/Unarise.hs
</a>
</li>
<li class="file-stats">
<a href="#704aa1faa076735c264245ca9b0390bbdcb91340">
compiler/GHC/StgToCmm/TagCheck.hs
</a>
</li>
<li class="file-stats">
<a href="#62e5fd382d9730853d0cbcec70620f1065b107cf">
compiler/GHC/Tc/Errors/Hole/FitTypes.hs
</a>
</li>
<li class="file-stats">
<a href="#9c7b412076a93d32443a64179d2d4b96de2102b6">
compiler/GHC/Tc/Errors/Hole/Plugin.hs
</a>
</li>
<li class="file-stats">
<a href="#9355bef855426caf5f526925edf351b20f9a86c4">
compiler/GHC/Tc/Gen/HsType.hs
</a>
</li>
<li class="file-stats">
<a href="#8bc716c15e34e2a77fef39fd4634b3ebbb9961f8">
compiler/GHC/Tc/Solver/Default.hs
</a>
</li>
<li class="file-stats">
<a href="#60f69bb5bc0ef8edf7d13518a1e48f7d36236318">
compiler/GHC/Tc/Solver/Dict.hs
</a>
</li>
<li class="file-stats">
<a href="#03ec4f8741105271af29a61fdb47c8feba9bbcfa">
compiler/GHC/Tc/Solver/Equality.hs
</a>
</li>
<li class="file-stats">
<a href="#0c6b585a8a21f8340a85ca2cef89c4b1bf5a8953">
compiler/GHC/Tc/Solver/Monad.hs
</a>
</li>
<li class="file-stats">
<a href="#ab8ab088292736c35c38fa55bdaec8ddcbf20b32">
compiler/GHC/Tc/Solver/Solve.hs
</a>
</li>
<li class="file-stats">
<a href="#dd8bbe6a21866e4f574f4796b7ad19de17564072">
compiler/GHC/Tc/TyCl/Class.hs
</a>
</li>
<li class="file-stats">
<a href="#e3ee113a30786383e543984d9cd1250e4b478bbb">
compiler/GHC/Tc/Types/TcRef.hs
</a>
</li>
<li class="file-stats">
<a href="#c6e4263ee64c68e57b7525127d98243fce38b1ea">
compiler/GHC/Tc/Utils/Monad.hs
</a>
</li>
<li class="file-stats">
<a href="#74295edeac870ee7f2f3484ebaffab5c948b735a">
compiler/GHC/Tc/Utils/Unify.hs
</a>
</li>
<li class="file-stats">
<a href="#20aaf8344f379f354fe31dd0c1c4db4ddc5b17aa">
compiler/GHC/Types/Id.hs
</a>
</li>
<li class="file-stats">
<a href="#8422a23d78e2470bc2f58d923525570a7c7385e9">
compiler/GHC/Types/PkgQual.hs
</a>
</li>
<li class="file-stats">
<a href="#2bae0d519d760f314844ebdda9c45a5c5a70459d">
compiler/GHC/Types/SptEntry.hs
</a>
</li>
<li class="file-stats">
<a href="#598aebb67cf4996e7c7414ec0bef247e3b5e0d73">
compiler/GHC/Types/Unique/Supply.hs
</a>
</li>
<li class="file-stats">
<a href="#ebf96e1abb10086e9249278068f22ce3a1f92ea7">
compiler/GHC/Utils/Unique.hs
</a>
</li>
<li class="file-stats">
<a href="#3000f72e31f633a1742a9c76be14862281166b11">
docs/users_guide/9.14.1-notes.rst
</a>
</li>
<li class="file-stats">
<a href="#6e9e255267780d64d50e2445aee2360e1269dcf1">
testsuite/driver/perf_notes.py
</a>
</li>
<li class="file-stats">
<a href="#419ffcab539ade110584db1bce889c4181d8d357">
testsuite/tests/default/default-fail08.hs
</a>
</li>
<li class="file-stats">
<a href="#3555e7a5a552fbd395c3592ab94714a90b9a4e59">
testsuite/tests/default/default-fail08.stderr
</a>
</li>
<li class="file-stats">
<a href="#b7de5a9206cba33cb82f6e98e639531301f35162">
testsuite/tests/rep-poly/T14561b.stderr
</a>
</li>
<li class="file-stats">
<a href="#8c6fd4006a4655f5801463f4e67d66c57096e557">
testsuite/tests/rep-poly/UnliftedNewtypesCoerceFail.stderr
</a>
</li>
<li class="file-stats">
<a href="#533d2ca033b11fdd8966bd6fa70000696ccbf48e">
<span class="new-file">
+
testsuite/tests/typecheck/should_compile/T21003.hs
</span>
</a>
</li>
<li class="file-stats">
<a href="#34fe7bf0e6fbf60effb28393399ba68666593909">
testsuite/tests/typecheck/should_compile/all.T
</a>
</li>
<li class="file-stats">
<a href="#9b80a707bf1845683ca19b803d6e41d9b3db2532">
testsuite/tests/typecheck/should_fail/T10495.hs
</a>
</li>
<li class="file-stats">
<a href="#790e43b820edfe677e4c72aec325fd081d9062fd">
testsuite/tests/typecheck/should_fail/T10495.stderr
</a>
</li>
</ul>
<h5 style="margin-top: 10px; margin-bottom: 10px; font-size: .875rem;">
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: #626168;">
—
<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/compare/3a9a0f6b0c9a7407c2edd3c825c8e64ab3a4a2f7...c64d5f466fc9f1cd8d42e0f79a6ba0d526788579">View it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://gitlab.haskell.org">gitlab.haskell.org</a>. <a href="https://gitlab.haskell.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link">Manage all notifications</a> · <a href="https://gitlab.haskell.org/help" target="_blank" rel="noopener noreferrer" class="help-link">Help</a>
</p>
</div>
</body>
</html>