<!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 data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>
<style>img {
max-width: 100%; height: auto;
}
body {
font-size: 0.875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,0.01) 0 0 1px;
}
body {
font-family: -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,0.01) 0 0 1px; font-family: -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;">
Vladislav Zavialov pushed to branch wip/int-index/ppr-tick at <a href="https://gitlab.haskell.org/ghc/ghc" style="color: #1068bf;">Glasgow Haskell Compiler / GHC</a>
</h3>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
Commits:
</h4>
<ul>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/8a90b2ce5e14edfc9f7f74849f8526034b7be246" style="color: #1068bf;">8a90b2ce</a></strong>
<div>
<span> by Vladislav Zavialov </span> <i> at 2022-11-22T16:42:18+03:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Check if the SDoc starts with a single quote (#22488)
This patch fixes pretty-printing of character literals
inside promoted lists and tuples.
When we pretty-print a promoted list or tuple whose first element
starts with a single quote, we want to add a space between the opening
bracket and the element:
'[True] -- ok
'[ 'True] -- ok
'['True] -- not ok
If we don't add the space, we accidentally produce a character
literal '['.
Before this patch, pprSpaceIfPromotedTyCon inspected the type as an AST
and tried to guess if it would be rendered with a single quote. However,
it missed the case when the inner type was itself a character literal:
'[ 'x'] -- ok
'['x'] -- not ok
Instead of adding this particular case, I opted for a more future-proof
solution: check the SDoc directly. This way we can detect if the single
quote is actually there instead of trying to predict it from the AST.
The new function is called spaceIfSingleQuote.
</pre>
</li>
<li>
<strong style="font-weight: bold;"><a href="https://gitlab.haskell.org/ghc/ghc/-/commit/afa9c2f264dac978012f1a6063abe13e5a0237f9" style="color: #1068bf;">afa9c2f2</a></strong>
<div>
<span> by Vladislav Zavialov </span> <i> at 2022-11-23T09:09:23+03:00 </i>
</div>
<pre class="commit-message" style='white-space: pre-wrap; display: block; font-size: 0.8125rem; color: #303030; position: relative; font-family: "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; word-break: break-all; word-wrap: break-word; background-color: #fafafa; border-radius: 2px; margin: 0; padding: 8px 12px; border: 1px solid #dbdbdb;'>Draft: Print unticked promoted data constructors (WIP: 20531)
Co-authored-by: Artyom Kuznetsov <hi@wzrd.ht>
</pre>
</li>
</ul>
<h4 style="margin-top: 10px; margin-bottom: 10px;">
30 changed files:
</h4>
<ul>
<li class="file-stats">
<a href="#d0d96a6d03668aeab20ebe05e2c4ccb798c7e64c" style="color: #1068bf;">
compiler/GHC.hs
</a>
</li>
<li class="file-stats">
<a href="#bd153f89bc48f3fd5079b51fb799808aacbd750c" style="color: #1068bf;">
compiler/GHC/Core/Opt/Pipeline.hs
</a>
</li>
<li class="file-stats">
<a href="#f168a93cde5e2aec2441d6331dfe500172df4af3" style="color: #1068bf;">
compiler/GHC/Core/Opt/Simplify.hs
</a>
</li>
<li class="file-stats">
<a href="#4aad0050db1a8a20db8bbca149111de99cb299c9" style="color: #1068bf;">
compiler/GHC/Core/TyCon.hs
</a>
</li>
<li class="file-stats">
<a href="#d51029aec6ce58e66d4b48865c1dd0d2038fda29" style="color: #1068bf;">
compiler/GHC/Data/FastString.hs
</a>
</li>
<li class="file-stats">
<a href="#dbce6cb5e8f3d5287103c66d1a56ad63bbbd11a9" style="color: #1068bf;">
compiler/GHC/Driver/Backpack.hs
</a>
</li>
<li class="file-stats">
<a href="#2e5692f568fd7b67a6b172e2a60469da8392508c" style="color: #1068bf;">
compiler/GHC/Driver/Flags.hs
</a>
</li>
<li class="file-stats">
<a href="#9a679a2680ef6061397f1987091ea9f96ffe095d" style="color: #1068bf;">
compiler/GHC/Driver/Main.hs
</a>
</li>
<li class="file-stats">
<a href="#774d88050336ef660c7a219fb06c480c2fc639bc" style="color: #1068bf;">
compiler/GHC/Driver/Session.hs
</a>
</li>
<li class="file-stats">
<a href="#dd79b5199bc3b425c4536c633b39006df111a7ef" style="color: #1068bf;">
compiler/GHC/HsToCore.hs
</a>
</li>
<li class="file-stats">
<a href="#c8a27621f82549165d8946ae8e9f467660958059" style="color: #1068bf;">
compiler/GHC/HsToCore/Monad.hs
</a>
</li>
<li class="file-stats">
<a href="#7d51edda4fa76a202cce0bca672ef300249ba8ea" style="color: #1068bf;">
compiler/GHC/Iface/Load.hs
</a>
</li>
<li class="file-stats">
<a href="#f2b2b84d138b362920ab9f144f58bf16254aab64" style="color: #1068bf;">
compiler/GHC/Iface/Type.hs
</a>
</li>
<li class="file-stats">
<a href="#1811a3b055be891f22cd203b90bf886f60b34dc7" style="color: #1068bf;">
compiler/GHC/Runtime/Context.hs
</a>
</li>
<li class="file-stats">
<a href="#c6e4263ee64c68e57b7525127d98243fce38b1ea" style="color: #1068bf;">
compiler/GHC/Tc/Utils/Monad.hs
</a>
</li>
<li class="file-stats">
<a href="#0f578f1fe8a9ec5a67a0f6fa165f2aa15f113682" style="color: #1068bf;">
compiler/GHC/Types/Name/Ppr.hs
</a>
</li>
<li class="file-stats">
<a href="#4d45cd1896284e4b4034580e431af68b09013b33" style="color: #1068bf;">
compiler/GHC/Utils/Misc.hs
</a>
</li>
<li class="file-stats">
<a href="#d3cf57b6a5ebc234dc7689db38ef9b6cf2259c0f" style="color: #1068bf;">
compiler/GHC/Utils/Outputable.hs
</a>
</li>
<li class="file-stats">
<a href="#145ad389c4a11348321b6e1cd77b27c6c7ae7b4f" style="color: #1068bf;">
compiler/GHC/Utils/Ppr.hs
</a>
</li>
<li class="file-stats">
<a href="#af1d9e2647379d23697be69f8b7fc568ed0294c5" style="color: #1068bf;">
docs/users_guide/using.rst
</a>
</li>
<li class="file-stats">
<a href="#5b0134fae416f72b93feecd453de317dbb614cf9" style="color: #1068bf;">
testsuite/tests/dependent/should_fail/T11471.stderr
</a>
</li>
<li class="file-stats">
<a href="#d4ea7310e7b23e35258b42f0451667a4573f77ab" style="color: #1068bf;">
testsuite/tests/dependent/should_fail/T13135_simple.stderr
</a>
</li>
<li class="file-stats">
<a href="#ca79bc3ddcaa29d9e468b6e0df1d410726e3e3d3" style="color: #1068bf;">
testsuite/tests/dependent/should_fail/T17131.stderr
</a>
</li>
<li class="file-stats">
<a href="#fddb11cdc4557c695ce31260b5903850292d5eb9" style="color: #1068bf;">
testsuite/tests/dependent/should_fail/T17541.stderr
</a>
</li>
<li class="file-stats">
<a href="#96090821f202f6a204aeee23e441dc8636ffaa61" style="color: #1068bf;">
testsuite/tests/ffi/should_fail/T21305_fail.stderr
</a>
</li>
<li class="file-stats">
<a href="#c5e0d0642ca5780e31d3d6f7b51e919a47842e34" style="color: #1068bf;">
testsuite/tests/gadt/T7293.stderr
</a>
</li>
<li class="file-stats">
<a href="#3776999853107051d8753baa6faed8e35a1166bc" style="color: #1068bf;">
testsuite/tests/gadt/T7294.stderr
</a>
</li>
<li class="file-stats">
<a href="#ec1a4945ff609e17915d75839baaed893d646689" style="color: #1068bf;">
testsuite/tests/ghci/T18060/T18060.stdout
</a>
</li>
<li class="file-stats">
<a href="#29c92ab3eeb914a8d94e70b5d875c6521c5cdb52" style="color: #1068bf;">
testsuite/tests/ghci/T18262/T18262.stdout
</a>
</li>
<li class="file-stats">
<a href="#b871b6a42394fdfb8abd9ba1f38a108700055ad5" style="color: #1068bf;">
testsuite/tests/ghci/scripts/GhciKinds.stdout
</a>
</li>
</ul>
<h5 style="margin-top: 10px; margin-bottom: 10px; font-size: 0.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: #666;">
—
<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/compare/23cd7b4cacdfe132f5b64c5ca5f8fc142d5589cc...afa9c2f264dac978012f1a6063abe13e5a0237f9" style="color: #1068bf;">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" style="color: #1068bf;">gitlab.haskell.org</a>. <a href="https://gitlab.haskell.org/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link" style="color: #1068bf;">Manage all notifications</a> · <a href="https://gitlab.haskell.org/help" target="_blank" rel="noopener noreferrer" class="help-link" style="color: #1068bf;">Help</a>
</p>
</div>
</body>
</html>