OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#include <gtest/gtest.h>
+#include <cds_test/ext_gtest.h>
#include <cds/algo/atomic.h>
#include "cxx11_convert_memory_order.h"
-#define EXPECT_ATOMIC_IS_LOCK_FREE( x ) EXPECT_TRUE( x.is_lock_free() )
+#define EXPECT_ATOMIC_IS_LOCK_FREE( x ) EXPECT_TRUE( x.is_lock_free())
namespace {
class cxx11_atomic_class: public ::testing::Test
template <typename Atomic>
void do_test_atomic_pointer_void_( Atomic& a, char * arr, char aSize, atomics::memory_order order )
{
+ CDS_UNUSED( aSize );
+
atomics::memory_order oLoad = convert_to_load_order(order);
atomics::memory_order oStore = convert_to_store_order(order);
void * p;
EXPECT_EQ( *a.load( oLoad ), 1 );
for ( integral_type i = 1; i < aSize; ++i ) {
- integral_type * p = a.load();
+ p = a.load();
EXPECT_EQ( *p, i );
EXPECT_EQ( a.fetch_add( 1, order ), p );
EXPECT_EQ( *a.load( oLoad ), i + 1 );
}
for ( integral_type i = aSize; i > 1; --i ) {
- integral_type * p = a.load();
+ p = a.load();
EXPECT_EQ( *p, i );
EXPECT_EQ( a.fetch_sub( 1, order ), p );
EXPECT_EQ( *a.load( oLoad ), i - 1 );
EXPECT_EQ( *a.load(), 1 );
for ( integral_type i = 1; i < aSize; ++i ) {
- integral_type * p = a.load();
+ p = a.load();
EXPECT_EQ( *p, i );
integral_type * pa = a.fetch_add( 1 );
EXPECT_EQ( pa, p );
}
for ( integral_type i = aSize; i > 1; --i ) {
- integral_type * p = a.load();
+ p = a.load();
EXPECT_EQ( *p, i );
EXPECT_EQ( a.fetch_sub( 1 ), p );
EXPECT_EQ( *a.load(), i - 1 );