From bac28da15f8144f5d43773fb892a701e3f058ad4 Mon Sep 17 00:00:00 2001 From: Philip Pronin Date: Thu, 6 Feb 2014 00:09:22 -0800 Subject: [PATCH] fix missing change from D1156950 Test Plan: fbconfig -r folly/experimental/test:eliasfano_test && fbmake runtests_opt Reviewed By: lucian@fb.com FB internal diff: D1161670 --- folly/experimental/EliasFanoCoding.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/folly/experimental/EliasFanoCoding.h b/folly/experimental/EliasFanoCoding.h index 228a2fc1..c8e8e3cf 100644 --- a/folly/experimental/EliasFanoCoding.h +++ b/folly/experimental/EliasFanoCoding.h @@ -213,7 +213,12 @@ struct EliasFanoEncoder { /* static */ if (forwardQuantum != 0) { // Workaround to avoid 'division by zero' compile-time error. constexpr size_t q = forwardQuantum ?: 1; - CHECK_LT(upperSizeBits, std::numeric_limits::max()); + /* static */ if (kVersion > 0) { + CHECK_LT(upperBound >> numLowerBits, + std::numeric_limits::max()); + } else { + CHECK_LT(upperSizeBits, std::numeric_limits::max()); + } numForwardPointers = size / q; forwardPointers = static_cast( -- 2.34.1