Fixes stdatomic.h test to match C11 spec
C11 defines the expected value to atomic_compare_exchange_* as being non-atomic
types. Using an atomic type is a syntax error in clang.
http://en.cppreference.com/w/c/atomic/atomic_compare_exchange
Change-Id: I74de1061fa1fc50d835451792d902000f368200e
diff --git a/tests/stdatomic_test.cpp b/tests/stdatomic_test.cpp
index 44f5c7b..d41bfa9 100644
--- a/tests/stdatomic_test.cpp
+++ b/tests/stdatomic_test.cpp
@@ -100,31 +100,31 @@
TEST(stdatomic, atomic_compare_exchange) {
atomic_int i;
- atomic_int expected;
+ int expected;
atomic_store(&i, 123);
- atomic_store(&expected, 123);
+ expected = 123;
ASSERT_TRUE(atomic_compare_exchange_strong(&i, &expected, 456));
ASSERT_FALSE(atomic_compare_exchange_strong(&i, &expected, 456));
- ASSERT_EQ(456, atomic_load(&expected));
+ ASSERT_EQ(456, expected);
atomic_store(&i, 123);
- atomic_store(&expected, 123);
+ expected = 123;
ASSERT_TRUE(atomic_compare_exchange_strong_explicit(&i, &expected, 456, memory_order_relaxed, memory_order_relaxed));
ASSERT_FALSE(atomic_compare_exchange_strong_explicit(&i, &expected, 456, memory_order_relaxed, memory_order_relaxed));
- ASSERT_EQ(456, atomic_load(&expected));
+ ASSERT_EQ(456, expected);
atomic_store(&i, 123);
- atomic_store(&expected, 123);
+ expected = 123;
ASSERT_TRUE(atomic_compare_exchange_weak(&i, &expected, 456));
ASSERT_FALSE(atomic_compare_exchange_weak(&i, &expected, 456));
- ASSERT_EQ(456, atomic_load(&expected));
+ ASSERT_EQ(456, expected);
atomic_store(&i, 123);
- atomic_store(&expected, 123);
+ expected = 123;
ASSERT_TRUE(atomic_compare_exchange_weak_explicit(&i, &expected, 456, memory_order_relaxed, memory_order_relaxed));
ASSERT_FALSE(atomic_compare_exchange_weak_explicit(&i, &expected, 456, memory_order_relaxed, memory_order_relaxed));
- ASSERT_EQ(456, atomic_load(&expected));
+ ASSERT_EQ(456, expected);
}
TEST(stdatomic, atomic_fetch_add) {