From bf3892acee49ae8b782e203bf04d58b36076f94b Mon Sep 17 00:00:00 2001 From: Anton Maklakov Date: Fri, 13 May 2022 13:33:04 +0700 Subject: [PATCH] newlib: stdatomic: fix conflicting types for __atomic_load/__atomic_store --- components/newlib/stdatomic.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/components/newlib/stdatomic.c b/components/newlib/stdatomic.c index f4b2bca371..08f8877158 100644 --- a/components/newlib/stdatomic.c +++ b/components/newlib/stdatomic.c @@ -497,16 +497,16 @@ ATOMIC_STORE(8, long long unsigned int) #endif // !HAS_ATOMICS_64 // Clang generates calls to the __atomic_load/__atomic_store functions for object size more then 4 bytes -void CLANG_ATOMIC_SUFFIX( __atomic_load ) (int size, void *src, void *dest, int model) { +void CLANG_ATOMIC_SUFFIX( __atomic_load ) (size_t size, const volatile void *src, void *dest, int model) { unsigned state = _ATOMIC_ENTER_CRITICAL(); - memcpy(dest, src, size); + memcpy(dest, (const void *)src, size); _ATOMIC_EXIT_CRITICAL(state); } CLANG_DECLARE_ALIAS( __atomic_load ) -void CLANG_ATOMIC_SUFFIX( __atomic_store ) (int size, void *dest, void *src, int model) { +void CLANG_ATOMIC_SUFFIX( __atomic_store ) (size_t size, volatile void *dest, void *src, int model) { unsigned state = _ATOMIC_ENTER_CRITICAL(); - memcpy(dest, src, size); + memcpy((void *)dest, (const void *)src, size); _ATOMIC_EXIT_CRITICAL(state); } CLANG_DECLARE_ALIAS( __atomic_store)