summarylogtreecommitdiffstats
path: root/fix_pi.patch
diff options
context:
space:
mode:
Diffstat (limited to 'fix_pi.patch')
-rw-r--r--fix_pi.patch17
1 files changed, 17 insertions, 0 deletions
diff --git a/fix_pi.patch b/fix_pi.patch
new file mode 100644
index 000000000000..d6b55dd61a6d
--- /dev/null
+++ b/fix_pi.patch
@@ -0,0 +1,17 @@
+--- src/gpart_cpp.cpp 2021-10-26 22:24:23.000000000 +0300
++++ src/gpart_cpp.cpp 2022-01-24 15:11:39.775657833 +0300
+@@ -617,12 +617,12 @@
+ // three real roots
+ sq = sqrt(qq);
+ dxx = acos(rr / (qq * sq)) * (1.0 / 3.0);
+ sq *= -2;
+ solutions[0] = sq * cos(dxx) - adiv3;
+- solutions[1] = sq * cos(dxx + (2.0 * PI / 3.0)) - adiv3;
+- solutions[2] = sq * cos(dxx - (2.0 * PI / 3.0)) - adiv3;
++ solutions[1] = sq * cos(dxx + (2.0 * M_PI / 3.0)) - adiv3;
++ solutions[2] = sq * cos(dxx - (2.0 * M_PI / 3.0)) - adiv3;
+ // now sort and check for within-epsilon equality
+ if (solutions[0] > solutions[1]) {
+ dxx = solutions[0];
+ solutions[0] = solutions[1];
+ if (dxx > solutions[2]) {