From 9bfca2f40f0857932e8bc66b6d1fdae94acf8d9c Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Fri, 17 Jan 2014 09:56:41 +0100 Subject: [PATCH] Fix prototype for atomic_add bastring declares the prototype for atomic_add, as it can't rely on haiku-specific headers. Have this declaration match the modified prototype from Scheduler branch merge. Matches commit 73ad2473e7874b3702cf5b0fdf4c81b747812ed9 on Haiku side. --- legacy/gcc/libstdc++/std/bastring.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/legacy/gcc/libstdc++/std/bastring.h b/legacy/gcc/libstdc++/std/bastring.h index a9c844d6fe..c60e4d7128 100644 --- a/legacy/gcc/libstdc++/std/bastring.h +++ b/legacy/gcc/libstdc++/std/bastring.h @@ -66,7 +66,7 @@ extern void __length_error (const char *); #endif #ifdef __HAIKU__ -extern "C" __haiku_int32 atomic_add(volatile __haiku_int32* value, +extern "C" __haiku_int32 atomic_add(__haiku_int32* value, __haiku_int32 addvalue); #endif /* __HAIKU__ */ @@ -82,7 +82,7 @@ private: charT* data () { return reinterpret_cast(this + 1); } charT& operator[] (size_t s) { return data () [s]; } #ifdef __HAIKU__ - charT* grab () { if (selfish) return clone (); atomic_add((volatile __haiku_int32*) &ref, 1); return data (); } + charT* grab () { if (selfish) return clone (); atomic_add((__haiku_int32*) &ref, 1); return data (); } void release() { if (atomic_add((__haiku_int32*) &ref, -1) == 1) delete this; } #else charT* grab () { if (selfish) return clone (); ++ref; return data (); }