From: khizmax Date: Tue, 7 Mar 2017 18:53:15 +0000 (+0300) Subject: Fixed test for 32-bit platforms X-Git-Tag: v2.3.0~131 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=eeec7266172c0b75270b45b945b9e614759c3508;p=libcds.git Fixed test for 32-bit platforms --- diff --git a/test/unit/misc/split_bitstring.cpp b/test/unit/misc/split_bitstring.cpp index 360fd3d2..825af884 100644 --- a/test/unit/misc/split_bitstring.cpp +++ b/test/unit/misc/split_bitstring.cpp @@ -428,6 +428,7 @@ namespace { uint64_t res; +#if CDS_BUILD_BITS == 64 { typedef cds::algo::split_bitstring< int48, int48_size, size_t > split_bitstring; split_bitstring splitter( src ); @@ -453,6 +454,7 @@ namespace { ASSERT_TRUE( splitter.eos() ); ASSERT_TRUE( !splitter ); } +#endif typedef cds::algo::split_bitstring< int48, int48_size, size_t > split_bitstring; split_bitstring splitter( src ); @@ -486,7 +488,11 @@ namespace { for ( size_t i = 0; i < int48_size * 8; ++i ) { ASSERT_FALSE( splitter.eos() ); ASSERT_FALSE( !splitter ); +#if CDS_BUILD_BITS == 64 res |= splitter.cut( 1 ) << i; +#else + res |= static_cast( splitter.cut( 1 )) << i; +#endif } ASSERT_TRUE( splitter.eos() ); ASSERT_TRUE( !splitter ); @@ -511,7 +517,11 @@ namespace { ASSERT_FALSE( splitter.eos() ); ASSERT_FALSE( !splitter ); int bits = std::rand() % 16; +#if CDS_BUILD_BITS == 64 res |= splitter.safe_cut( bits ) << shift; +#else + res |= static_cast( splitter.safe_cut( bits )) << shift; +#endif shift += bits; } ASSERT_TRUE( splitter.eos() ); @@ -533,6 +543,7 @@ namespace { uint64_t res; +#if CDS_BUILD_BITS == 64 { typedef cds::algo::split_bitstring< int48, int48_size, size_t > split_bitstring; split_bitstring splitter( src ); @@ -558,6 +569,7 @@ namespace { ASSERT_TRUE( splitter.eos() ); ASSERT_TRUE( !splitter ); } +#endif typedef cds::algo::split_bitstring< int48, int48_size, size_t > split_bitstring; split_bitstring splitter( src ); @@ -591,7 +603,11 @@ namespace { for ( size_t i = 0; i < int48_size * 8; ++i ) { ASSERT_FALSE( splitter.eos() ); ASSERT_FALSE( !splitter ); +#if CDS_BUILD_BITS == 64 res = ( res << 1 ) | ( splitter.cut( 1 ) ); +#else + res = ( res << 1 ) | static_cast( splitter.cut( 1 ) ); +#endif } ASSERT_TRUE( splitter.eos() ); ASSERT_TRUE( !splitter ); @@ -618,7 +634,11 @@ namespace { size_t shift = splitter.rest_count(); if ( shift > bits ) shift = bits; +#if CDS_BUILD_BITS == 64 res = ( res << shift ) | splitter.safe_cut( bits ); +#else + res = ( res << shift ) | static_cast( splitter.safe_cut( bits )); +#endif } ASSERT_TRUE( splitter.eos() ); ASSERT_TRUE( !splitter );