@@ -1359,7 +1359,7 @@ int wolfSSL_Atomic_Uint_CompareExchange(
13591359}
13601360
13611361int wolfSSL_Atomic_Ptr_CompareExchange (
1362- void * * c , void * * expected_ptr , void * new_ptr )
1362+ void * volatile * c , void * * expected_ptr , void * new_ptr )
13631363{
13641364 uintptr_t exp = (uintptr_t )* expected_ptr ;
13651365 int ret = atomic_fcmpset_ptr ((uintptr_t * )c , & exp , (uintptr_t )new_ptr );
@@ -1456,7 +1456,7 @@ int wolfSSL_Atomic_Uint_CompareExchange(
14561456}
14571457
14581458int wolfSSL_Atomic_Ptr_CompareExchange (
1459- void * * c , void * * expected_ptr , void * new_ptr )
1459+ void * volatile * c , void * * expected_ptr , void * new_ptr )
14601460{
14611461 /* use gcc-built-in __atomic_compare_exchange_n(), not
14621462 * atomic_compare_exchange_strong_explicit(), to sidestep _Atomic type
@@ -1551,7 +1551,7 @@ int wolfSSL_Atomic_Uint_CompareExchange(
15511551}
15521552
15531553int wolfSSL_Atomic_Ptr_CompareExchange (
1554- void * * c , void * * expected_ptr , void * new_ptr )
1554+ void * volatile * c , void * * expected_ptr , void * new_ptr )
15551555{
15561556 return __atomic_compare_exchange_n (
15571557 c , expected_ptr , new_ptr , 0 /* weak */ ,
@@ -1651,7 +1651,7 @@ int wolfSSL_Atomic_Uint_CompareExchange(
16511651}
16521652
16531653int wolfSSL_Atomic_Ptr_CompareExchange (
1654- void * * c , void * * expected_ptr , void * new_ptr )
1654+ void * volatile * c , void * * expected_ptr , void * new_ptr )
16551655{
16561656#ifdef _WIN64
16571657 LONG64 actual_ptr = InterlockedCompareExchange64 (
0 commit comments