Index: boost/lockfree/detail/freelist.hpp =================================================================== --- boost/lockfree/detail/freelist.hpp (revision 80363) +++ boost/lockfree/detail/freelist.hpp (working copy) @@ -381,7 +382,7 @@ #ifdef BOOST_LOCKFREE_FREELIST_INIT_RUNS_DTOR destruct(nodes + i); #else - deallocate(i); + deallocate(static_cast(i)); #endif } } @@ -391,7 +392,8 @@ template fixed_size_freelist (Allocator const & alloc, std::size_t count): - NodeStorage(alloc, count), pool_(tagged_index(count, 0)) + NodeStorage(alloc, count), + pool_(tagged_index(static_cast(count), 0)) { initialize(); } @@ -461,7 +463,7 @@ index_t null_handle(void) const { - return NodeStorage::node_count(); + return static_cast(NodeStorage::node_count()); } index_t get_handle(T * pointer) const @@ -469,7 +471,7 @@ if (pointer == NULL) return null_handle(); else - return pointer - NodeStorage::nodes(); + return static_cast(pointer - NodeStorage::nodes()); } index_t get_handle(tagged_node_handle const & handle) const