| gatomic.h | gatomic.h | |||
|---|---|---|---|---|
| skipping to change at line 67 | skipping to change at line 67 | |||
| gpointer newval); | gpointer newval); | |||
| #ifndef G_ATOMIC_OP_MEMORY_BARRIER_NEEDED | #ifndef G_ATOMIC_OP_MEMORY_BARRIER_NEEDED | |||
| # define g_atomic_int_get(atomic) ((gint)*(atomic)) | # define g_atomic_int_get(atomic) ((gint)*(atomic)) | |||
| # define g_atomic_int_set(atomic, newval) ((void) (*(atomic) = (newval ))) | # define g_atomic_int_set(atomic, newval) ((void) (*(atomic) = (newval ))) | |||
| # define g_atomic_pointer_get(atomic) ((gpointer)*(atomic)) | # define g_atomic_pointer_get(atomic) ((gpointer)*(atomic)) | |||
| # define g_atomic_pointer_set(atomic, newval) ((void) (*(atomic) = (newval ))) | # define g_atomic_pointer_set(atomic, newval) ((void) (*(atomic) = (newval ))) | |||
| #else | #else | |||
| # define g_atomic_int_get(atomic) \ | # define g_atomic_int_get(atomic) \ | |||
| ((void) sizeof (gchar [sizeof (*(atomic)) == sizeof (gint) ? 1 : -1]), \ | ((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) \ | # define g_atomic_int_set(atomic, newval) \ | |||
| ((void) sizeof (gchar [sizeof (*(atomic)) == sizeof (gint) ? 1 : -1]), \ | ((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) \ | # define g_atomic_pointer_get(atomic) \ | |||
| ((void) sizeof (gchar [sizeof (*(atomic)) == sizeof (gpointer) ? 1 : -1]), \ | ((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) \ | # define g_atomic_pointer_set(atomic, newval) \ | |||
| ((void) sizeof (gchar [sizeof (*(atomic)) == sizeof (gpointer) ? 1 : -1]), \ | ((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 */ | #endif /* G_ATOMIC_OP_MEMORY_BARRIER_NEEDED */ | |||
| /** | ||||
| * g_atomic_int_inc: | ||||
| * @atomic: a pointer to an integer. | ||||
| * | ||||
| * Atomically increments the integer pointed to by @atomic by 1. | ||||
| * | ||||
| * Since: 2.4 | ||||
| */ | ||||
| #define g_atomic_int_inc(atomic) (g_atomic_int_add ((atomic), 1)) | #define g_atomic_int_inc(atomic) (g_atomic_int_add ((atomic), 1)) | |||
| #define g_atomic_int_dec_and_test(atomic) \ | ||||
| /** | ||||
| * g_atomic_int_dec_and_test: | ||||
| * @atomic: a pointer to an integer | ||||
| * | ||||
| * Atomically decrements the integer pointed to by @atomic by 1. | ||||
| * | ||||
| * Returns: %TRUE if the integer pointed to by @atomic is 0 | ||||
| * after decrementing it | ||||
| * | ||||
| * Since: 2.4 | ||||
| */ | ||||
| #define g_atomic_int_dec_and_test(atomic) \ | ||||
| (g_atomic_int_exchange_and_add ((atomic), -1) == 1) | (g_atomic_int_exchange_and_add ((atomic), -1) == 1) | |||
| G_END_DECLS | G_END_DECLS | |||
| #endif /* __G_ATOMIC_H__ */ | #endif /* __G_ATOMIC_H__ */ | |||
| End of changes. 6 change blocks. | ||||
| 5 lines changed or deleted | 25 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||