<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">FloatFnInverses is marked as ‘expect_broken’ on Windows:<div class=""><a href="https://gitlab.haskell.org/ghc/ghc/-/blob/922c6bc8dd8d089cfe4b90ec2120cb48959ba2b5/testsuite/tests/numeric/should_run/all.T#L44-45" class="">https://gitlab.haskell.org/ghc/ghc/-/blob/922c6bc8dd8d089cfe4b90ec2120cb48959ba2b5/testsuite/tests/numeric/should_run/all.T#L44-45</a></div><div class="">And there’s a relevant issue: <a href="https://gitlab.haskell.org/ghc/ghc/-/issues/15670" class="">https://gitlab.haskell.org/ghc/ghc/-/issues/15670</a></div><div class=""><br class=""></div><div class=""><div>Mizuki</div><div><br class=""><blockquote type="cite" class=""><div class="">2021/09/04 18:46、David James <<a href="mailto:dj112358@outlook.com" class="">dj112358@outlook.com</a>>のメール:</div><br class="Apple-interchange-newline"><div class=""><meta charset="UTF-8" class=""><div class="WordSection1" style="page: WordSection1; caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Hi - thank you for this. I was unaware of the “constant folding” in GCC (and I’m surprised it works for functions like asinh), but I can see that it explains the difference in behaviour.</div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><o:p class=""> </o:p></div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class="">So I think this is a (possibly minor) bug that Haskell inherits from mingw-w64. I guess I should raise a GHC issue – though I’m not sure whether it would be best to try to fix within Haskell or within mingw-w64.</div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><o:p class=""> </o:p></div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Also, I think the<span class="Apple-converted-space"> </span><a href="https://gitlab.haskell.org/ghc/ghc/-/blob/master/testsuite/tests/numeric/should_run/FloatFnInverses.hs" style="color: blue; text-decoration: underline;" class="">FloatFnInverses.hs</a><span class="Apple-converted-space"> </span>test doesn’t should be showing as a fail somewhere in the CI testing. (It doesn’t give the expected output when I run it on Windows). Do you know whether/where I can see that? (I don’t know what CI happens or how to view its output).</div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><o:p class=""> </o:p></div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class="">Thanks again,</div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class="">David.</div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><o:p class=""> </o:p></div><div style="border-style: solid none none; border-top-width: 1pt; border-top-color: rgb(225, 225, 225); padding: 3pt 0cm 0cm;" class=""><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif; border: none; padding: 0cm;" class=""><b class="">From:<span class="Apple-converted-space"> </span></b><a href="mailto:minorinoki@gmail.com" style="color: blue; text-decoration: underline;" class="">arata, mizuki</a><br class=""><b class="">Sent:<span class="Apple-converted-space"> </span></b>03 September 2021 13:43<br class=""><b class="">To:<span class="Apple-converted-space"> </span></b><a href="mailto:dj112358@outlook.com" style="color: blue; text-decoration: underline;" class="">David James</a><br class=""><b class="">Cc:<span class="Apple-converted-space"> </span></b><a href="mailto:haskell-cafe@haskell.org" style="color: blue; text-decoration: underline;" class="">haskell-cafe@haskell.org</a><br class=""><b class="">Subject:<span class="Apple-converted-space"> </span></b>Re: [Haskell-cafe] Trouble with asinh (c calls with Doubles) in Windows</div></div><div style="margin: 0cm; font-size: 11pt; font-family: Calibri, sans-serif;" class=""><o:p class=""> </o:p></div><p class="MsoNormal" style="margin: 0cm 0cm 12pt; font-size: 11pt; font-family: Calibri, sans-serif;">Hi David,<br class=""><br class="">If I understand correctly, GHC uses mingw-w64’s libc implementation on Windows.<br class="">Since mingw-w64’s math functions are not of very good quality, it is likely that asinh returns NaN for a very large input.<br class=""><br class="">As to why `asinh(1.7976931348623157e308)` in CAsinh.c produces (seemingly-correct) 710.4758, it is probably because the C compiler (GCC) uses a different implementation of asinh when doing constant folding.<br class="">As a note, you may get a different (compile-time computed) result for `asinh(x)` if you set a more aggressive optimization flag.<br class=""><br class="">Mizuki</p></div></div></blockquote></div><br class=""></div></body></html>