summaryrefslogtreecommitdiff
path: root/debian/patches/missing-rint.diff
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/missing-rint.diff')
-rw-r--r--debian/patches/missing-rint.diff45
1 files changed, 0 insertions, 45 deletions
diff --git a/debian/patches/missing-rint.diff b/debian/patches/missing-rint.diff
deleted file mode 100644
index d9865364..00000000
--- a/debian/patches/missing-rint.diff
+++ /dev/null
@@ -1,45 +0,0 @@
-From: Benjamin Barenblat <bbaren@google.com>
-Subject: Round a double multiplication before casting it to integer
-Forwarded: yes
-Applied-Upstream: https://github.com/abseil/abseil-cpp/commit/60be12ed9822078970f05f3c560324184302df6b
-
-The code
-
- static_cast<int>(x * y)
-
-(for double x and y) performs a double multiplication into a temporary
-that, by standard, may have excess precision. The subsequent cast to int
-discards the excess precision. However, the cast may examine the excess
-precision during conversion, producing surprising results like
-
- static_cast<int>(1.7 * 10) == 16
-
-on certain systems. Correct this case by explicitly rounding 1.7 * 10
-before casting it.
-
-The author works at Google. Upstream applied this patch as Piper
-revision 378922064 and exported it to GitHub; the Applied-Upstream URL
-above points to the exported commit.
-
---- a/absl/random/mocking_bit_gen_test.cc
-+++ b/absl/random/mocking_bit_gen_test.cc
-@@ -15,6 +15,7 @@
- //
- #include "absl/random/mocking_bit_gen.h"
-
-+#include <cmath>
- #include <numeric>
- #include <random>
-
-@@ -328,8 +329,9 @@ TEST(BasicMocking, WillByDefaultWithArgs) {
-
- absl::MockingBitGen gen;
- ON_CALL(absl::MockPoisson<int>(), Call(gen, _))
-- .WillByDefault(
-- [](double lambda) { return static_cast<int>(lambda * 10); });
-+ .WillByDefault([](double lambda) {
-+ return static_cast<int>(std::rint(lambda * 10));
-+ });
- EXPECT_EQ(absl::Poisson<int>(gen, 1.7), 17);
- EXPECT_EQ(absl::Poisson<int>(gen, 0.03), 0);
- }