<!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>
Marge Bot pushed to branch master
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/3e9b745253cdf7299a692a95dceac87d6d0ff82f">3e9b7452</a></strong>
<div>
<span>by Ben Gamari</span>
<i>at 2020-12-18T05:54:21-05:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">primops: Document semantics of Float/Int conversions
Fixes #18840.
</pre>
</li>
</ul>
<h4>1 changed file:</h4>
<ul>
<li class="file-stats">
<a href="#451725cc4e5d443a3b7c2adcdf224840f953b7e2">
compiler/GHC/Builtin/primops.txt.pp
</a>
</li>
</ul>
<h4>Changes:</h4>
<li id="451725cc4e5d443a3b7c2adcdf224840f953b7e2">
<a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3e9b745253cdf7299a692a95dceac87d6d0ff82f#451725cc4e5d443a3b7c2adcdf224840f953b7e2"><strong>compiler/GHC/Builtin/primops.txt.pp</strong></a>
<hr>
<table class="code white" style="font-family: monospace; font-size: 90%;" bgcolor="#fff" width="100%" cellpadding="0" cellspacing="0">
<tr class="line_holder match" id="" style="line-height: 1.6;">
<td class="diff-line-num unfold js-unfold old_line" data-linenumber="627" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">...</td>
<td class="diff-line-num unfold js-unfold new_line" data-linenumber="627" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">...</td>
<td class="line_content match " style="padding-left: 0.5em; padding-right: 0.5em; color: rgba(0,0,0,0.3);" bgcolor="#fafafa">@@ -627,10 +627,22 @@ primop IntToWordOp "int2Word#" GenPrimOp Int# -> Word#</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="627" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
627
</td>
<td class="diff-line-num new_line" data-linenumber="627" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
627
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC627" class="line" lang="puppet"> <span class="n" style="color: #333;">with</span> <span class="n" style="color: #333;">code_size</span> <span class="o" style="font-weight: 600;">=</span> <span class="m" style="color: #099;">0</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="628" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
628
</td>
<td class="diff-line-num new_line" data-linenumber="628" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
628
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC628" class="line" lang="puppet"></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="629" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
629
</td>
<td class="diff-line-num new_line" data-linenumber="629" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
629
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC629" class="line" lang="puppet"><span class="n" style="color: #333;">primop</span> <span class="nc" style="color: #458; font-weight: 600;">IntToFloatOp</span> <span class="s2" style="color: #d14;">"int2Float#"</span> <span class="nc" style="color: #458; font-weight: 600;">GenPrimOp</span> <span class="nc" style="color: #458; font-weight: 600;">Int</span><span class="c" style="color: #998; font-style: italic;"># -> Float#</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="630" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="630" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
630
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC630" class="line" lang="puppet"> <span class="p">{</span><span class="nc" style="color: #458; font-weight: 600;">Convert</span> <span class="n" style="color: #333;">an</span> <span class="p">{</span><span class="err" style="color: #a61717; background-color: #e3d2d2;">\</span><span class="n" style="color: #333;">tt</span> <span class="nc" style="color: #458; font-weight: 600;">Int</span><span class="c" style="color: #998; font-style: italic;">#} to the corresponding {\tt Float#} with the same</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="630" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="631" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
631
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC631" class="line" lang="puppet"> <span class="n" style="color: #333;">integral</span> <span class="nf" style="color: #900; font-weight: 600;">value</span> <span class="p">(</span><span class="n" style="color: #333;">up</span> <span class="n" style="color: #333;">to</span> <span class="n" style="color: #333;">truncation</span> <span class="n" style="color: #333;">due</span> <span class="n" style="color: #333;">to</span> <span class="n" style="color: #333;">floating</span><span class="o" style="font-weight: 600;">-</span><span class="n" style="color: #333;">point</span> <span class="n" style="color: #333;">precision</span><span class="p">)</span><span class="o" style="font-weight: 600;">.</span> <span class="n" style="color: #333;">e</span><span class="o" style="font-weight: 600;">.</span><span class="n" style="color: #333;">g</span><span class="o" style="font-weight: 600;">.</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="630" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="632" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
632
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC632" class="line" lang="puppet"> <span class="p">{</span><span class="err" style="color: #a61717; background-color: #e3d2d2;">\</span><span class="n" style="color: #333;">tt</span> <span class="n" style="color: #333;">int2Float</span><span class="c" style="color: #998; font-style: italic;"># 1# == 1.0#}}</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="630" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
630
</td>
<td class="diff-line-num new_line" data-linenumber="633" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
633
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC633" class="line" lang="puppet"><span class="n" style="color: #333;">primop</span> <span class="nc" style="color: #458; font-weight: 600;">IntToDoubleOp</span> <span class="s2" style="color: #d14;">"int2Double#"</span> <span class="nc" style="color: #458; font-weight: 600;">GenPrimOp</span> <span class="nc" style="color: #458; font-weight: 600;">Int</span><span class="c" style="color: #998; font-style: italic;"># -> Double#</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="631" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="634" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
634
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC634" class="line" lang="puppet"> <span class="p">{</span><span class="nc" style="color: #458; font-weight: 600;">Convert</span> <span class="n" style="color: #333;">an</span> <span class="p">{</span><span class="err" style="color: #a61717; background-color: #e3d2d2;">\</span><span class="n" style="color: #333;">tt</span> <span class="nc" style="color: #458; font-weight: 600;">Int</span><span class="c" style="color: #998; font-style: italic;">#} to the corresponding {\tt Double#} with the same</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="631" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="635" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
635
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC635" class="line" lang="puppet"> <span class="n" style="color: #333;">integral</span> <span class="nf" style="color: #900; font-weight: 600;">value</span> <span class="p">(</span><span class="n" style="color: #333;">up</span> <span class="n" style="color: #333;">to</span> <span class="n" style="color: #333;">truncation</span> <span class="n" style="color: #333;">due</span> <span class="n" style="color: #333;">to</span> <span class="n" style="color: #333;">floating</span><span class="o" style="font-weight: 600;">-</span><span class="n" style="color: #333;">point</span> <span class="n" style="color: #333;">precision</span><span class="p">)</span><span class="o" style="font-weight: 600;">.</span> <span class="n" style="color: #333;">e</span><span class="o" style="font-weight: 600;">.</span><span class="n" style="color: #333;">g</span><span class="o" style="font-weight: 600;">.</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="631" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="636" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
636
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC636" class="line" lang="puppet"> <span class="p">{</span><span class="err" style="color: #a61717; background-color: #e3d2d2;">\</span><span class="n" style="color: #333;">tt</span> <span class="n" style="color: #333;">int2Double</span><span class="c" style="color: #998; font-style: italic;"># 1# == 1.0##}}</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="631" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
631
</td>
<td class="diff-line-num new_line" data-linenumber="637" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
637
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC637" class="line" lang="puppet"></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="632" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
632
</td>
<td class="diff-line-num new_line" data-linenumber="638" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
638
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC638" class="line" lang="puppet"><span class="n" style="color: #333;">primop</span> <span class="nc" style="color: #458; font-weight: 600;">WordToFloatOp</span> <span class="s2" style="color: #d14;">"word2Float#"</span> <span class="nc" style="color: #458; font-weight: 600;">GenPrimOp</span> <span class="nc" style="color: #458; font-weight: 600;">Word</span><span class="c" style="color: #998; font-style: italic;"># -> Float#</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="633" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="639" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
639
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC639" class="line" lang="puppet"> <span class="p">{</span><span class="nc" style="color: #458; font-weight: 600;">Convert</span> <span class="n" style="color: #333;">an</span> <span class="p">{</span><span class="err" style="color: #a61717; background-color: #e3d2d2;">\</span><span class="n" style="color: #333;">tt</span> <span class="nc" style="color: #458; font-weight: 600;">Word</span><span class="c" style="color: #998; font-style: italic;">#} to the corresponding {\tt Float#} with the same</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="633" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="640" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
640
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC640" class="line" lang="puppet"> <span class="n" style="color: #333;">integral</span> <span class="nf" style="color: #900; font-weight: 600;">value</span> <span class="p">(</span><span class="n" style="color: #333;">up</span> <span class="n" style="color: #333;">to</span> <span class="n" style="color: #333;">truncation</span> <span class="n" style="color: #333;">due</span> <span class="n" style="color: #333;">to</span> <span class="n" style="color: #333;">floating</span><span class="o" style="font-weight: 600;">-</span><span class="n" style="color: #333;">point</span> <span class="n" style="color: #333;">precision</span><span class="p">)</span><span class="o" style="font-weight: 600;">.</span> <span class="n" style="color: #333;">e</span><span class="o" style="font-weight: 600;">.</span><span class="n" style="color: #333;">g</span><span class="o" style="font-weight: 600;">.</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="633" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="641" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
641
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC641" class="line" lang="puppet"> <span class="p">{</span><span class="err" style="color: #a61717; background-color: #e3d2d2;">\</span><span class="n" style="color: #333;">tt</span> <span class="n" style="color: #333;">word2Float</span><span class="c" style="color: #998; font-style: italic;"># 1## == 1.0#}}</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="633" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
633
</td>
<td class="diff-line-num new_line" data-linenumber="642" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
642
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC642" class="line" lang="puppet"><span class="n" style="color: #333;">primop</span> <span class="nc" style="color: #458; font-weight: 600;">WordToDoubleOp</span> <span class="s2" style="color: #d14;">"word2Double#"</span> <span class="nc" style="color: #458; font-weight: 600;">GenPrimOp</span> <span class="nc" style="color: #458; font-weight: 600;">Word</span><span class="c" style="color: #998; font-style: italic;"># -> Double#</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="634" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="643" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
643
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC643" class="line" lang="puppet"> <span class="p">{</span><span class="nc" style="color: #458; font-weight: 600;">Convert</span> <span class="n" style="color: #333;">an</span> <span class="p">{</span><span class="err" style="color: #a61717; background-color: #e3d2d2;">\</span><span class="n" style="color: #333;">tt</span> <span class="nc" style="color: #458; font-weight: 600;">Word</span><span class="c" style="color: #998; font-style: italic;">#} to the corresponding {\tt Double#} with the same</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="634" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="644" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
644
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC644" class="line" lang="puppet"> <span class="n" style="color: #333;">integral</span> <span class="nf" style="color: #900; font-weight: 600;">value</span> <span class="p">(</span><span class="n" style="color: #333;">up</span> <span class="n" style="color: #333;">to</span> <span class="n" style="color: #333;">truncation</span> <span class="n" style="color: #333;">due</span> <span class="n" style="color: #333;">to</span> <span class="n" style="color: #333;">floating</span><span class="o" style="font-weight: 600;">-</span><span class="n" style="color: #333;">point</span> <span class="n" style="color: #333;">precision</span><span class="p">)</span><span class="o" style="font-weight: 600;">.</span> <span class="n" style="color: #333;">e</span><span class="o" style="font-weight: 600;">.</span><span class="n" style="color: #333;">g</span><span class="o" style="font-weight: 600;">.</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="634" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="645" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
645
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC645" class="line" lang="puppet"> <span class="p">{</span><span class="err" style="color: #a61717; background-color: #e3d2d2;">\</span><span class="n" style="color: #333;">tt</span> <span class="n" style="color: #333;">word2Double</span><span class="c" style="color: #998; font-style: italic;"># 1## == 1.0##}}</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="634" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
634
</td>
<td class="diff-line-num new_line" data-linenumber="646" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
646
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC646" class="line" lang="puppet"></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="635" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
635
</td>
<td class="diff-line-num new_line" data-linenumber="647" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
647
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC647" class="line" lang="puppet"><span class="n" style="color: #333;">primop</span> <span class="nc" style="color: #458; font-weight: 600;">IntSllOp</span> <span class="s2" style="color: #d14;">"uncheckedIShiftL#"</span> <span class="nc" style="color: #458; font-weight: 600;">GenPrimOp</span> <span class="nc" style="color: #458; font-weight: 600;">Int</span><span class="c" style="color: #998; font-style: italic;"># -> Int# -> Int#</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="636" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
636
</td>
<td class="diff-line-num new_line" data-linenumber="648" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
648
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC648" class="line" lang="puppet"> <span class="p">{</span><span class="nc" style="color: #458; font-weight: 600;">Shift</span> <span class="n" style="color: #333;">left</span><span class="o" style="font-weight: 600;">.</span> <span class="nc" style="color: #458; font-weight: 600;">Result</span> <span class="n" style="color: #333;">undefined</span> <span class="k" style="font-weight: 600;">if</span> <span class="n" style="color: #333;">shift</span> <span class="n" style="color: #333;">amount</span> <span class="n" style="color: #333;">is</span> <span class="n" style="color: #333;">not</span></span>
</pre>
</td>
</tr>
</table>
<br>
</li>
</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #666;">
—
<br>
<a href="https://gitlab.haskell.org/ghc/ghc/-/commit/3e9b745253cdf7299a692a95dceac87d6d0ff82f">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.
<script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","action":{"@type":"ViewAction","name":"View Commit","url":"https://gitlab.haskell.org/ghc/ghc/-/commit/3e9b745253cdf7299a692a95dceac87d6d0ff82f"}}</script>
</p>
</div>
</body>
</html>