[PATCH] gatomic.h: added missing "volatile" modifier to internal casts
- From: Max Kellermann <max duempel org>
- To: gtk-list gnome org
- Subject: [PATCH] gatomic.h: added missing "volatile" modifier to internal casts
- Date: Thu, 15 Apr 2010 11:06:29 +0200
These macros expect pointers decorated with the "volatile" modifier,
but internally, they cast them to "void*", dropping the "volatile"
modifier. gcc4.4 doesn't like that, and emits a warning:
"cast discards qualifiers from pointer target type"
---
glib/gatomic.h | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/glib/gatomic.h b/glib/gatomic.h
index 7d9c318..22b28d9 100644
--- a/glib/gatomic.h
+++ b/glib/gatomic.h
@@ -64,16 +64,16 @@ void g_atomic_pointer_set (volatile gpointer G_GNUC_MAY_ALI
#else
# define g_atomic_int_get(atomic) \
((void) sizeof (gchar [sizeof (*(atomic)) == sizeof (gint) ? 1 : -1]), \
- (g_atomic_int_get) ((volatile gint G_GNUC_MAY_ALIAS *) (void *) (atomic)))
+ (g_atomic_int_get) ((volatile gint G_GNUC_MAY_ALIAS *) (volatile void *) (atomic)))
# define g_atomic_int_set(atomic, newval) \
((void) sizeof (gchar [sizeof (*(atomic)) == sizeof (gint) ? 1 : -1]), \
- (g_atomic_int_set) ((volatile gint G_GNUC_MAY_ALIAS *) (void *) (atomic), (newval)))
+ (g_atomic_int_set) ((volatile gint G_GNUC_MAY_ALIAS *) (volatile void *) (atomic), (newval)))
# define g_atomic_pointer_get(atomic) \
((void) sizeof (gchar [sizeof (*(atomic)) == sizeof (gpointer) ? 1 : -1]), \
- (g_atomic_pointer_get) ((volatile gpointer G_GNUC_MAY_ALIAS *) (void *) (atomic)))
+ (g_atomic_pointer_get) ((volatile gpointer G_GNUC_MAY_ALIAS *) (volatile void *) (atomic)))
# define g_atomic_pointer_set(atomic, newval) \
((void) sizeof (gchar [sizeof (*(atomic)) == sizeof (gpointer) ? 1 : -1]), \
- (g_atomic_pointer_set) ((volatile gpointer G_GNUC_MAY_ALIAS *) (void *) (atomic), (newval)))
+ (g_atomic_pointer_set) ((volatile gpointer G_GNUC_MAY_ALIAS *) (volatile void *) (atomic), (newval)))
#endif /* G_ATOMIC_OP_MEMORY_BARRIER_NEEDED */
#define g_atomic_int_inc(atomic) (g_atomic_int_add ((atomic), 1))
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]