Boost C++ Libraries: Ticket #8621: erf function gives wrong results with pgcpp - PGI 10.4 https://svn.boost.org/trac10/ticket/8621 <p> Hi experts, </p> <p> I compiled the following code with pgcpp / PGI 10.4 on linux. </p> <p> /opt/pgi-10.4/linux86/10.4/bin/pgcpp main.cpp -o erf.exe </p> <pre class="wiki">#include &lt;math.h&gt; #include &lt;boost/math/special_functions/erf.hpp&gt; int main() { double val(1.0); printf("BOOST : %-20.15E\n", boost::math::erf(val)); printf("MATH_H: %-20.15E\n", erf(val)); } </pre><p> Output is as follows: </p> <pre class="wiki">BOOST : 8.368481544380342E-01 MATH_H: 8.427007929497149E-01 </pre><p> The value computed by BOOST is incorrect. The same code will give the correct value when compiled with VS2012 with Windows 7-64 bits OS. </p> <p> My linux box is running SUSE Linux Enterprise Desktop 10 SP2 (x86_64) </p> <p> Can you please help troubleshoot the problem? Other basic statistic functions will also return wrong values such as cdf and quantile of standard distribution. </p> <p> Thanks a lot, </p> <p> Jacques Desfosses </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/8621 Trac 1.4.3 viboes Mon, 03 Jun 2013 18:03:00 GMT description changed https://svn.boost.org/trac10/ticket/8621#comment:1 https://svn.boost.org/trac10/ticket/8621#comment:1 <ul> <li><strong>description</strong> modified (<a href="/trac10/ticket/8621?action=diff&amp;version=1">diff</a>) </li> </ul> Ticket viboes Mon, 03 Jun 2013 18:03:22 GMT component changed; owner set https://svn.boost.org/trac10/ticket/8621#comment:2 https://svn.boost.org/trac10/ticket/8621#comment:2 <ul> <li><strong>owner</strong> set to <span class="trac-author">John Maddock</span> </li> <li><strong>component</strong> <span class="trac-field-old">None</span> → <span class="trac-field-new">math</span> </li> </ul> Ticket anonymous Mon, 03 Jun 2013 18:24:16 GMT <link>https://svn.boost.org/trac10/ticket/8621#comment:3 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:3</guid> <description> <p> I'm going to be away for the next few days, and don't have access to the PGI compiler anyway, in the mean time can you try running with BOOST_MATH_INSTRUMENT defined and also try with GCC as the compiler? </p> <p> Thanks, John Maddock </p> </description> <category>Ticket</category> </item> <item> <author>Jacques Desfosses <jacques.desfosses@…></author> <pubDate>Mon, 03 Jun 2013 18:59:59 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:4 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:4</guid> <description> <p> Here is the output when -DBOOST_MATH_INSTRUMENT is added to the compile line. </p> <p> ../boost/math/special_functions/erf.hpp:1049 result_type = long double ../boost/math/special_functions/erf.hpp:1050 value_type = long double ../boost/math/special_functions/erf.hpp:1051 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1071 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1049 result_type = long double ../boost/math/special_functions/erf.hpp:1050 value_type = long double ../boost/math/special_functions/erf.hpp:1051 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1071 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1049 result_type = long double ../boost/math/special_functions/erf.hpp:1050 value_type = long double ../boost/math/special_functions/erf.hpp:1051 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1071 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1049 result_type = long double ../boost/math/special_functions/erf.hpp:1050 value_type = long double ../boost/math/special_functions/erf.hpp:1051 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1071 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1049 result_type = long double ../boost/math/special_functions/erf.hpp:1050 value_type = long double ../boost/math/special_functions/erf.hpp:1051 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1071 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1049 result_type = long double ../boost/math/special_functions/erf.hpp:1050 value_type = long double ../boost/math/special_functions/erf.hpp:1051 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1071 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1049 result_type = double ../boost/math/special_functions/erf.hpp:1050 value_type = long double ../boost/math/special_functions/erf.hpp:1051 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1071 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called BOOST : 8.506645778731253E-01 MATH_H: 8.427007929497149E-01 </p> </description> <category>Ticket</category> </item> <item> <author>Jacques Desfosses <jacques.desfosses@…></author> <pubDate>Mon, 03 Jun 2013 19:09:55 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:5 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:5</guid> <description> <p> I also tried it out with g++ version 4.1.2 and obtained correct answers. </p> <p> g++ (GCC) 4.1.2 20070115 (SUSE Linux) </p> <p> BOOST : 8.427007929497149E-01 MATH_H: 8.427007929497149E-01 </p> <p> Unfortunately, there are compile errors with this compiler when using -DBOOST_MATH_INSTRUMENT so I am not able to provide the detailed output. </p> <p> g++ -I../ main.cpp -DBOOST_MATH_INSTRUMENT -o erf_g++.exe In file included from ../boost/fusion/tuple/tuple.hpp:22, </p> <blockquote> <p> from ../boost/fusion/tuple.hpp:10, from ../boost/fusion/include/tuple.hpp:10, from ../boost/math/tools/tuple.hpp:89, from ../boost/math/special_functions/detail/igamma_inverse.hpp:13, from ../boost/math/special_functions/gamma.hpp:1651, from ../boost/math/special_functions/erf.hpp:15, from main.cpp:2: </p> </blockquote> <p> ../boost/fusion/tuple/detail/preprocessed/tuple.hpp:21:7: warning: no newline at end of file ../boost/math/special_functions/fpclassify.hpp: In function â?~int boost::math::detail::fpclassify_imp(T, const boost::math::detail::generic_tag&lt;true&gt;&amp;)â?T: ../boost/math/special_functions/fpclassify.hpp:132: error: â?~setprecisionâ?T is not a member of â?~stdâ?T ../boost/math/special_functions/fpclassify.hpp: In function â?~int boost::math::detail::fpclassify_imp(T, const boost::math::detail::generic_tag&lt;false&gt;&amp;)â?T: ../boost/math/special_functions/fpclassify.hpp:176: error: â?~setprecisionâ?T is not a member of â?~stdâ?T ../boost/math/special_functions/fpclassify.hpp: In function â?~int boost::math::detail::fpclassify_imp(T, boost::math::detail::ieee_copy_all_bits_tag)â?T: ../boost/math/special_functions/fpclassify.hpp:186: error: â?~setprecisionâ?T is not a member of â?~stdâ?T ../boost/math/special_functions/fpclassify.hpp:190: error: â?~setprecisionâ?T is not a member of â?~stdâ?T ../boost/math/special_functions/fpclassify.hpp:192: error: â?~setprecisionâ?T is not a member of â?~stdâ?T ../boost/math/special_functions/fpclassify.hpp:193: error: â?~setprecisionâ?T is not a member of â?~stdâ?T ../boost/math/special_functions/fpclassify.hpp: In function â?~int boost::math::detail::fpclassify_imp(T, boost::math::detail::ieee_copy_leading_bits_tag)â?T: ../boost/math/special_functions/fpclassify.hpp:215: error: â?~setprecisionâ?T is not a member of â?~stdâ?T </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Fri, 07 Jun 2013 18:08:04 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:6 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:6</guid> <description> <p> Thanks for the extra information, I'm attaching an updated version of boost/math/special_functions/erf.hpp which prints some more debugging info. Can you give it a try and report back the output? The last few lines should be: </p> <pre class="wiki">d:\data\boost\trunk\boost\math\special_functions\erf.hpp:177 53-bit precision erf_imp called d:\data\boost\trunk\boost\math\special_functions\erf.hpp:269 Y = 0.40593576431274414 d:\data\boost\trunk\boost\math\special_functions\erf.hpp:270 P[0] = -0.098090592216281233 d:\data\boost\trunk\boost\math\special_functions\erf.hpp:271 Q[0] = 1 d:\data\boost\trunk\boost\math\special_functions\erf.hpp:273 result = 0.427583576155807 d:\data\boost\trunk\boost\math\special_functions\erf.hpp:275 result = 0.15729920705028513 </pre><p> Thanks, John. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Fri, 07 Jun 2013 18:11:59 GMT</pubDate> <title>attachment set https://svn.boost.org/trac10/ticket/8621 https://svn.boost.org/trac10/ticket/8621 <ul> <li><strong>attachment</strong> → <span class="trac-field-new">erf.hpp</span> </li> </ul> <p> Debugging version of erf.hpp </p> Ticket Jacques Desfosses <jacques.desfosses@…> Fri, 07 Jun 2013 18:26:16 GMT <link>https://svn.boost.org/trac10/ticket/8621#comment:7 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:7</guid> <description> <p> Hi John, </p> <p> The output with the updated version of erf.hpp is below. I just noticed that when I compile with -DBOOST_MATH_INSTRUMENT the output from BOOST is still incorrect (8.506645778731253E-01) but different than the output from the version compiled without the define (8.368481544380342E-01). </p> <p> Thanks! </p> <p> Jacques </p> <p> ../boost/math/special_functions/erf.hpp:1055 result_type = long double ../boost/math/special_functions/erf.hpp:1056 value_type = long double ../boost/math/special_functions/erf.hpp:1057 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1055 result_type = long double ../boost/math/special_functions/erf.hpp:1056 value_type = long double ../boost/math/special_functions/erf.hpp:1057 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1055 result_type = long double ../boost/math/special_functions/erf.hpp:1056 value_type = long double ../boost/math/special_functions/erf.hpp:1057 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:269 Y = 0.40593576431274414 ../boost/math/special_functions/erf.hpp:270 P<a class="missing changeset" title="No changeset 0 in the repository">[0]</a> = -0.098090592216281252 ../boost/math/special_functions/erf.hpp:271 Q<a class="missing changeset" title="No changeset 0 in the repository">[0]</a> = -8.7793466483067508e+269 ../boost/math/special_functions/erf.hpp:272 z = 1.25 ../boost/math/special_functions/erf.hpp:274 result = 0.40593576431274414 ../boost/math/special_functions/erf.hpp:276 result = 0.068071006921468324 ../boost/math/special_functions/erf.hpp:1055 result_type = long double ../boost/math/special_functions/erf.hpp:1056 value_type = long double ../boost/math/special_functions/erf.hpp:1057 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1055 result_type = long double ../boost/math/special_functions/erf.hpp:1056 value_type = long double ../boost/math/special_functions/erf.hpp:1057 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1055 result_type = long double ../boost/math/special_functions/erf.hpp:1056 value_type = long double ../boost/math/special_functions/erf.hpp:1057 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:1055 result_type = double ../boost/math/special_functions/erf.hpp:1056 value_type = long double ../boost/math/special_functions/erf.hpp:1057 precision_type = boost::math::policies::digits2&lt;53&gt; ../boost/math/special_functions/erf.hpp:1077 tag_type = mpl_::int_&lt;53&gt; ../boost/math/special_functions/erf.hpp:177 53-bit precision erf_imp called ../boost/math/special_functions/erf.hpp:269 Y = 0.40593576431274414 ../boost/math/special_functions/erf.hpp:270 P<a class="missing changeset" title="No changeset 0 in the repository">[0]</a> = -0.098090592216281252 ../boost/math/special_functions/erf.hpp:271 Q<a class="missing changeset" title="No changeset 0 in the repository">[0]</a> = -8.7793466483067508e+269 ../boost/math/special_functions/erf.hpp:272 z = 1 ../boost/math/special_functions/erf.hpp:274 result = 0.40593576431274414 ../boost/math/special_functions/erf.hpp:276 result = 0.14933542212687465 BOOST : 8.506645778731253E-01 MATH_H: 8.427007929497149E-01 </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Sat, 08 Jun 2013 11:04:53 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:8 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:8</guid> <description> <p> Thanks, the problem value is: </p> <p> <code> Q[0] = -8.7793466483067508e+269 </code> </p> <p> With Q being initialized like this: </p> <pre class="wiki"> static const T Q[] = { 1L, BOOST_MATH_BIG_CONSTANT(T, 53, 1.84759070983002217845), BOOST_MATH_BIG_CONSTANT(T, 53, 1.42628004845511324508), BOOST_MATH_BIG_CONSTANT(T, 53, 0.578052804889902404909), BOOST_MATH_BIG_CONSTANT(T, 53, 0.12385097467900864233), BOOST_MATH_BIG_CONSTANT(T, 53, 0.0113385233577001411017), BOOST_MATH_BIG_CONSTANT(T, 53, 0.337511472483094676155e-5), }; </pre><p> Can you take a look and see if the compiler has a problem with initialization from a long int? Initialization from long and long long is used all over the place in Boost.Math, so while I could easily patch that case, it would be hard to get all of them :-( </p> <p> Besides it really should work! </p> </description> <category>Ticket</category> </item> <item> <author>Jacques Desfosses <jacques.desfosses@…></author> <pubDate>Sun, 09 Jun 2013 03:37:52 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:9 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:9</guid> <description> <p> Thanks again for your help! The compiler is okay with long initialization. The compiler seems to dislike the mixing of 1L and BOOST_MATH_BIG_CONSTANT initializers. I was able to obtain correct results by defining Q using these 2 methods: </p> <p> 1) Without BOOST_MATH_BIG_CONSTANT </p> <pre class="wiki">static const T Q[] = { 1L, 1.84759070983002217845, 1.42628004845511324508, 0.578052804889902404909, 0.12385097467900864233, 0.0113385233577001411017, 0.337511472483094676155e-5, }; </pre><p> 2) Only with BOOST_MATH_BIG_CONSTANT </p> <pre class="wiki">static const T Q[] = { BOOST_MATH_BIG_CONSTANT(T, 53, 1), BOOST_MATH_BIG_CONSTANT(T, 53, 1.84759070983002217845), BOOST_MATH_BIG_CONSTANT(T, 53, 1.42628004845511324508), BOOST_MATH_BIG_CONSTANT(T, 53, 0.578052804889902404909), BOOST_MATH_BIG_CONSTANT(T, 53, 0.12385097467900864233), BOOST_MATH_BIG_CONSTANT(T, 53, 0.0113385233577001411017), BOOST_MATH_BIG_CONSTANT(T, 53, 0.337511472483094676155e-5), }; </pre><p> I also had the opportunity to try out an older PGI compiler (version 7.1-3) and I also ran into the same problem. So the issue is not specific to PGI version 10.4. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Sun, 09 Jun 2013 14:14:12 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:10 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:10</guid> <description> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/84714" title="Don't mix literal and non-literal initializers in one table - it ...">[84714]</a>) Don't mix literal and non-literal initializers in one table - it causes the PGI compiler to generate incorrect code. Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8621" title="#8621: Bugs: erf function gives wrong results with pgcpp - PGI 10.4 (closed: fixed)">#8621</a>. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Sun, 09 Jun 2013 14:14:57 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:11 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:11</guid> <description> <p> Can you try the patches referenced above? </p> <p> Many thanks, John. </p> </description> <category>Ticket</category> </item> <item> <author>Jacques Desfosses <jacques.desfosses@…></author> <pubDate>Thu, 13 Jun 2013 17:41:47 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:12 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:12</guid> <description> <p> Hi John. Sorry for the delay. The patch works well. Did you, by any chance, forget to modify the following arrays? </p> <p> <strong>boost/math/special_functions/detail/lgamma_small.hpp</strong> </p> <pre class="wiki"> static const T Q[] = { static_cast&lt;T&gt;(0.1e1), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, 0.196202987197795200688e1)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, 0.148019669424231326694e1)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, 0.541391432071720958364e0)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, 0.988504251128010129477e-1)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, 0.82130967464889339326e-2)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, 0.224936291922115757597e-3)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, -0.223352763208617092964e-6)) }; static const T Q[] = { static_cast&lt;T&gt;(0.1e1), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, -0.150169356054485044494e1)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, 0.846973248876495016101e0)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, -0.220095151814995745555e0)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, 0.25582797155975869989e-1)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, -0.100666795539143372762e-2)), static_cast&lt;T&gt;(BOOST_MATH_BIG_CONSTANT(T, 64, -0.827193521891290553639e-6)) }; </pre><p> <strong>boost/math/special_functions/zeta.hpp</strong> </p> <pre class="wiki">static const T Q[8] = { 1, BOOST_MATH_BIG_CONSTANT(T, 64, 0.286577739726542730421), BOOST_MATH_BIG_CONSTANT(T, 64, 0.0447355811517733225843), BOOST_MATH_BIG_CONSTANT(T, 64, 0.00430125107610252363302), BOOST_MATH_BIG_CONSTANT(T, 64, 0.000284956969089786662045), BOOST_MATH_BIG_CONSTANT(T, 64, 0.116188101609848411329e-4), BOOST_MATH_BIG_CONSTANT(T, 64, 0.278090318191657278204e-6), BOOST_MATH_BIG_CONSTANT(T, 64, -0.19683620233222028478e-8), }; </pre><p> I ran into another issue with the PGI compiler and the generic quantile finder. If it turns out to be an issue with boost, I will log another ticket. Thanks so much for your help, </p> <p> Jacques </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Sat, 15 Jun 2013 08:04:56 GMT</pubDate> <title/> <link>https://svn.boost.org/trac10/ticket/8621#comment:13 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:13</guid> <description> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/84789" title="Don't mix literal and non-literal initializers in one table - it ...">[84789]</a>) Don't mix literal and non-literal initializers in one table - it causes the PGI compiler to generate incorrect code. Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8621" title="#8621: Bugs: erf function gives wrong results with pgcpp - PGI 10.4 (closed: fixed)">#8621</a>. </p> </description> <category>Ticket</category> </item> <item> <dc:creator>John Maddock</dc:creator> <pubDate>Fri, 21 Jun 2013 16:08:11 GMT</pubDate> <title>status changed; resolution set https://svn.boost.org/trac10/ticket/8621#comment:14 https://svn.boost.org/trac10/ticket/8621#comment:14 <ul> <li><strong>status</strong> <span class="trac-field-old">new</span> → <span class="trac-field-new">closed</span> </li> <li><strong>resolution</strong> → <span class="trac-field-new">fixed</span> </li> </ul> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/84864" title="Apply patches from #8621. Fixes #8621.">[84864]</a>) Apply patches from <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8621" title="#8621: Bugs: erf function gives wrong results with pgcpp - PGI 10.4 (closed: fixed)">#8621</a>. Fixes <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8621" title="#8621: Bugs: erf function gives wrong results with pgcpp - PGI 10.4 (closed: fixed)">#8621</a>. </p> Ticket John Maddock Sat, 28 Sep 2013 16:19:56 GMT <link>https://svn.boost.org/trac10/ticket/8621#comment:15 </link> <guid isPermaLink="false">https://svn.boost.org/trac10/ticket/8621#comment:15</guid> <description> <p> (In <a class="changeset" href="https://svn.boost.org/trac10/changeset/85987" title="Merge accumulated patches from Trunk. Refs #8384, Refs #8855, refs ...">[85987]</a>) Merge accumulated patches from Trunk. Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8384" title="#8384: Feature Requests: Make shared_ptr movable (closed: invalid)">#8384</a>, Refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8855" title="#8855: Bugs: [math] GCC 4.8+ warns unused local typedef... (closed: fixed)">#8855</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/9107" title="#9107: Bugs: unused parameter warning in fraction with clang (closed: fixed)">#9107</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/9109" title="#9109: Bugs: Warning in bessel with -Wshadow (closed: fixed)">#9109</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8333" title="#8333: Bugs: [math] PGI 11.3 problems (sph_bessel.cpp, sph_bessel.cpp) (closed: fixed)">#8333</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8621" title="#8621: Bugs: erf function gives wrong results with pgcpp - PGI 10.4 (closed: fixed)">#8621</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8732" title="#8732: Bugs: Need to protect calls against C99 math macro expansion (closed: fixed)">#8732</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8733" title="#8733: Feature Requests: Testing for unprotected references to C99 math macros (closed: fixed)">#8733</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8837" title="#8837: Bugs: boost::math::students_t quantile() fails for huge degrees of freedom (closed: fixed)">#8837</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/8940" title="#8940: Bugs: Argument promotion fails dependent libs on platforms not supporting ... (closed: fixed)">#8940</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/9042" title="#9042: Bugs: boost::math, cdf(complement(normal_distribution&lt;&gt;(...)) fails to catch ... (closed: fixed)">#9042</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/9087" title="#9087: Support Requests: [boost math] error: no operator &#34;=&#34; matches these operands in ... (closed: fixed)">#9087</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/9104" title="#9104: Bugs: boost::math::ellint_2 bug in x86_64 double precision (closed: fixed)">#9104</a>, refs <a class="closed ticket" href="https://svn.boost.org/trac10/ticket/9126" title="#9126: Bugs: Logistic distribution pdf() and cdf(complement()) fail to catch ... (closed: fixed)">#9126</a>. </p> </description> <category>Ticket</category> </item> </channel> </rss>