From 07e8ca9c8c9539430a3a17b7c0953a1079fac2bb Mon Sep 17 00:00:00 2001 From: Lev Dragunov Date: Mon, 13 Jul 2015 12:35:41 +0300 Subject: Revert "[3party][succinct] Fixed uint64_t <-> size_t warnings." --- 3party/succinct/darray.hpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to '3party/succinct/darray.hpp') diff --git a/3party/succinct/darray.hpp b/3party/succinct/darray.hpp index c2ed3cc108..79920f2f8d 100644 --- a/3party/succinct/darray.hpp +++ b/3party/succinct/darray.hpp @@ -24,7 +24,7 @@ namespace succinct { std::vector subblock_inventory; std::vector overflow_positions; - for (size_t word_idx = 0; word_idx < data.size(); ++word_idx) { + for (uint64_t word_idx = 0; word_idx < data.size(); ++word_idx) { uint64_t cur_pos = word_idx * 64; uint64_t cur_word = WordGetter()(data, word_idx); unsigned long l; @@ -74,20 +74,22 @@ namespace succinct { inline uint64_t select(bit_vector const& bv, uint64_t idx) const { assert(idx < num_positions()); - int64_t block_pos = m_block_inventory[util::to_size(idx / block_size)]; + uint64_t block = idx / block_size; + int64_t block_pos = m_block_inventory[block]; if (block_pos < 0) { uint64_t overflow_pos = uint64_t(-block_pos - 1); - return m_overflow_positions[util::to_size(overflow_pos + (idx % block_size))]; + return m_overflow_positions[overflow_pos + (idx % block_size)]; } - uint64_t start_pos = uint64_t(block_pos) + m_subblock_inventory[util::to_size(idx / subblock_size)]; + uint64_t subblock = idx / subblock_size; + uint64_t start_pos = uint64_t(block_pos) + m_subblock_inventory[subblock]; uint64_t reminder = idx % subblock_size; mapper::mappable_vector const& data = bv.data(); if (!reminder) { return start_pos; } else { - size_t word_idx = util::to_size(start_pos / 64); + uint64_t word_idx = start_pos / 64; uint64_t word_shift = start_pos % 64; uint64_t word = WordGetter()(data, word_idx) & (uint64_t(-1) << word_shift); -- cgit v1.2.3